mirror of
https://github.com/upa/mscp.git
synced 2026-02-16 10:54:47 +08:00
cleanup docker files and build/test procedure
This commit is contained in:
@@ -1,30 +0,0 @@
|
||||
FROM ubuntu:latest
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG mscpdir="/mscp"
|
||||
|
||||
COPY . ${mscpdir}
|
||||
|
||||
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates
|
||||
|
||||
# install numpy and pytest, and sshd for test
|
||||
RUN apt-get install -y --no-install-recommends \
|
||||
python3 python3-pip openssh-server
|
||||
|
||||
RUN python3 -m pip install numpy pytest
|
||||
|
||||
|
||||
# preparation for sshd
|
||||
RUN mkdir /var/run/sshd \
|
||||
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
|
||||
&& mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
|
||||
|
||||
|
||||
# build
|
||||
RUN ${mscpdir}/install-build-deps.sh
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build \
|
||||
&& mkdir build && cd build \
|
||||
&& cmake .. && make
|
||||
@@ -1,19 +0,0 @@
|
||||
FROM ubuntu:20.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG mscpdir="/mscp"
|
||||
|
||||
COPY . ${mscpdir}
|
||||
|
||||
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates
|
||||
|
||||
RUN ${mscpdir}/install-build-deps.sh
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& cmake -B build -DBUILD_PKG=1 \
|
||||
&& cd ${mscpdir}/build \
|
||||
&& cpack -G DEB CPackConfig.cmake
|
||||
@@ -1,19 +0,0 @@
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG mscpdir="/mscp"
|
||||
|
||||
COPY . ${mscpdir}
|
||||
|
||||
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates
|
||||
|
||||
RUN ${mscpdir}/install-build-deps.sh
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& cmake -B build -DBUILD_PKG=1 \
|
||||
&& cd ${mscpdir}/build \
|
||||
&& cpack -G DEB CPackConfig.cmake
|
||||
@@ -1,31 +1,37 @@
|
||||
|
||||
Build `mscp` in docker containers.
|
||||
Build docker containers.
|
||||
|
||||
```console
|
||||
cd ..
|
||||
|
||||
docker build -t mscp-ubuntu:20.04 -f docker/Dockerfile-ubuntu-20.04 .
|
||||
docker run -it --rm -v (pwd):/out mscp-ubuntu:20.04 \
|
||||
cp /mscp/build/mscp_0.0.0-ubuntu-20.04-x86_64.deb /out/
|
||||
docker build -t mscp-ubuntu:20.04 -f docker/ubuntu-20.04.Dockerfile .
|
||||
|
||||
docker build -t mscp-ubuntu:22.04 -f docker/Dockerfile-ubuntu-22.04 .
|
||||
docker run -it --rm -v (pwd):/out mscp-ubuntu:22.04 \
|
||||
cp /mscp/build/mscp_0.0.0-ubuntu-22.04-x86_64.deb /out/
|
||||
|
||||
docker build -t mscp-centos:8 -f docker/Dockerfile-centos-8 .
|
||||
docker run -it --rm -v (pwd):/out mscp-centos:8 \
|
||||
```
|
||||
|
||||
Test `mscp` in the containers.
|
||||
|
||||
```console
|
||||
docker run --init --rm mscp-ubuntu:20.04 /build/mscp/scripts/test-in-container.sh
|
||||
|
||||
docker run --init --rm mscp-ubuntu:22.04 /build/mscp/scripts/test-in-container.sh
|
||||
|
||||
docker run --init --rm mscp-centos:8 /build/mscp/scripts/test-in-container.sh
|
||||
```
|
||||
|
||||
Retrieve deb/rpm packages.
|
||||
|
||||
```console
|
||||
docker run --rm -v (pwd):/out mscp-ubuntu:20.04 \
|
||||
cp /mscp/build/mscp_0.0.0-ubuntu-20.04-x86_64.deb /out/
|
||||
|
||||
docker run --rm -v (pwd):/out mscp-ubuntu:22.04 \
|
||||
cp /mscp/build/mscp_0.0.0-ubuntu-22.04-x86_64.deb /out/
|
||||
|
||||
docker run --rm -v (pwd):/out mscp-centos:8 \
|
||||
cp /mscp/build/mscp_0.0.0-centos-8-x86_64.rpm /out/
|
||||
```
|
||||
|
||||
|
||||
Test `mscp` in a ubuntu:latest docker container.
|
||||
|
||||
```console
|
||||
cd ..
|
||||
|
||||
docker build --rm -t mscp-test -f docker/Dockerfile-test .
|
||||
|
||||
docker run --init --rm mscp-test bash -c "/usr/sbin/sshd; cd /mscp/build; ctest --verbose"
|
||||
```
|
||||
|
||||
I don't know whether these these are good way.
|
||||
I don't know whether these are good way.
|
||||
@@ -9,16 +9,27 @@ RUN cd /etc/yum.repos.d/
|
||||
RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
|
||||
RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
|
||||
|
||||
# install numpy and pytest, sshd for test, and rpm-build
|
||||
RUN set -ex && yum -y update && yum -y install \
|
||||
rpm-build
|
||||
python3 python3-pip openssh openssh-server openssh-clients rpm-build
|
||||
|
||||
RUN ${mscpdir}/install-build-deps.sh
|
||||
RUN python3 -m pip install numpy pytest
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build
|
||||
|
||||
RUN cd ${mscpdir} \
|
||||
# preparation for sshd
|
||||
RUN mkdir /var/run/sshd \
|
||||
&& ssh-keygen -A \
|
||||
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
|
||||
&& mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
|
||||
|
||||
# install build dependency
|
||||
RUN ${mscpdir}/scripts/install-build-deps.sh
|
||||
|
||||
# build
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build \
|
||||
&& cmake -B build -DBUILD_PKG=1 \
|
||||
&& cd ${mscpdir}/build \
|
||||
&& make \
|
||||
&& cpack -G RPM CPackConfig.cmake
|
||||
|
||||
34
docker/ubuntu-20.04.Dockerfile
Normal file
34
docker/ubuntu-20.04.Dockerfile
Normal file
@@ -0,0 +1,34 @@
|
||||
FROM ubuntu:20.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG mscpdir="/mscp"
|
||||
|
||||
COPY . ${mscpdir}
|
||||
|
||||
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates
|
||||
|
||||
# install numpy and pytest, and sshd for test
|
||||
RUN apt-get install -y --no-install-recommends \
|
||||
python3 python3-pip openssh-server
|
||||
|
||||
RUN python3 -m pip install numpy pytest
|
||||
|
||||
|
||||
# preparation for sshd
|
||||
RUN mkdir /var/run/sshd \
|
||||
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
|
||||
&& mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
|
||||
|
||||
|
||||
# install build dependency
|
||||
RUN ${mscpdir}/scripts/install-build-deps.sh
|
||||
|
||||
|
||||
# build
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build \
|
||||
&& cmake -B build -DBUILD_PKG=1 \
|
||||
&& cd ${mscpdir}/build \
|
||||
&& make \
|
||||
&& cpack -G DEB CPackConfig.cmake
|
||||
34
docker/ubuntu-22.04.Dockerfile
Normal file
34
docker/ubuntu-22.04.Dockerfile
Normal file
@@ -0,0 +1,34 @@
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
ARG mscpdir="/mscp"
|
||||
|
||||
COPY . ${mscpdir}
|
||||
|
||||
RUN set -ex && apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates
|
||||
|
||||
# install numpy and pytest, and sshd for test
|
||||
RUN apt-get install -y --no-install-recommends \
|
||||
python3 python3-pip openssh-server
|
||||
|
||||
RUN python3 -m pip install numpy pytest
|
||||
|
||||
|
||||
# preparation for sshd
|
||||
RUN mkdir /var/run/sshd \
|
||||
&& ssh-keygen -f /root/.ssh/id_rsa -N "" \
|
||||
&& mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
|
||||
|
||||
|
||||
# install build dependency
|
||||
RUN ${mscpdir}/scripts/install-build-deps.sh
|
||||
|
||||
|
||||
# build
|
||||
RUN cd ${mscpdir} \
|
||||
&& rm -rf build \
|
||||
&& cmake -B build -DBUILD_PKG=1 \
|
||||
&& cd ${mscpdir}/build \
|
||||
&& make \
|
||||
&& cpack -G DEB CPackConfig.cmake
|
||||
Reference in New Issue
Block a user