summaryrefslogtreecommitdiff
path: root/docker
diff options
context:
space:
mode:
Diffstat (limited to 'docker')
-rw-r--r--docker/Dockerfile-test30
-rw-r--r--docker/Dockerfile-ubuntu-20.0419
-rw-r--r--docker/Dockerfile-ubuntu-22.0419
-rw-r--r--docker/README.md32
-rw-r--r--docker/centos-8.Dockerfile (renamed from docker/Dockerfile-centos-8)21
-rw-r--r--docker/ubuntu-20.04.Dockerfile34
-rw-r--r--docker/ubuntu-22.04.Dockerfile34
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