summaryrefslogtreecommitdiff
path: root/docker/centos-8.Dockerfile
blob: 586b1e9d4ce2a7f981b0301ae2dd8efe8a313572 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
FROM centos:8

ARG mscpdir="/mscp"

COPY . ${mscpdir}

# from https://stackoverflow.com/questions/70963985/error-failed-to-download-metadata-for-repo-appstream-cannot-prepare-internal
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 \
	python3 python3-pip openssh openssh-server openssh-clients rpm-build

RUN python3 -m pip install numpy pytest


# 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 		\
        && cd ${mscpdir}/build          \
	&& make				\
	&& cpack -G RPM CPackConfig.cmake \
	&& rpm -iv *.rpm