diff options
Diffstat (limited to 'docker')
-rw-r--r-- | docker/Dockerfile-test | 30 | ||||
-rw-r--r-- | docker/Dockerfile-ubuntu-20.04 | 19 | ||||
-rw-r--r-- | docker/Dockerfile-ubuntu-22.04 | 19 | ||||
-rw-r--r-- | docker/README.md | 32 | ||||
-rw-r--r-- | docker/centos-8.Dockerfile (renamed from docker/Dockerfile-centos-8) | 21 | ||||
-rw-r--r-- | docker/ubuntu-20.04.Dockerfile | 34 | ||||
-rw-r--r-- | docker/ubuntu-22.04.Dockerfile | 34 |
7 files changed, 103 insertions, 86 deletions
diff --git a/docker/Dockerfile-test b/docker/Dockerfile-test deleted file mode 100644 index f4d44c7..0000000 --- a/docker/Dockerfile-test +++ /dev/null @@ -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 diff --git a/docker/Dockerfile-ubuntu-20.04 b/docker/Dockerfile-ubuntu-20.04 deleted file mode 100644 index 687072c..0000000 --- a/docker/Dockerfile-ubuntu-20.04 +++ /dev/null @@ -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 diff --git a/docker/Dockerfile-ubuntu-22.04 b/docker/Dockerfile-ubuntu-22.04 deleted file mode 100644 index 59a57d2..0000000 --- a/docker/Dockerfile-ubuntu-22.04 +++ /dev/null @@ -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 diff --git a/docker/README.md b/docker/README.md index 8576acd..6ed88d8 100644 --- a/docker/README.md +++ b/docker/README.md @@ -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 \ - cp /mscp/build/mscp_0.0.0-centos-8-x86_64.rpm /out/ ``` +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 -Test `mscp` in a ubuntu:latest docker container. +docker run --init --rm mscp-centos:8 /build/mscp/scripts/test-in-container.sh +``` + +Retrieve deb/rpm packages. ```console -cd .. +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 build --rm -t mscp-test -f docker/Dockerfile-test . +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 --init --rm mscp-test bash -c "/usr/sbin/sshd; cd /mscp/build; ctest --verbose" +docker run --rm -v (pwd):/out mscp-centos:8 \ + cp /mscp/build/mscp_0.0.0-centos-8-x86_64.rpm /out/ ``` -I don't know whether these these are good way.
\ No newline at end of file +I don't know whether these are good way.
\ No newline at end of file diff --git a/docker/Dockerfile-centos-8 b/docker/centos-8.Dockerfile index 8210eca..3d60c72 100644 --- a/docker/Dockerfile-centos-8 +++ b/docker/centos-8.Dockerfile @@ -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 diff --git a/docker/ubuntu-20.04.Dockerfile b/docker/ubuntu-20.04.Dockerfile new file mode 100644 index 0000000..9fdeea3 --- /dev/null +++ b/docker/ubuntu-20.04.Dockerfile @@ -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 diff --git a/docker/ubuntu-22.04.Dockerfile b/docker/ubuntu-22.04.Dockerfile new file mode 100644 index 0000000..0f4ab9c --- /dev/null +++ b/docker/ubuntu-22.04.Dockerfile @@ -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 |