mirror of
https://github.com/upa/mscp.git
synced 2026-02-04 03:24:58 +08:00
37 lines
1.1 KiB
Docker
37 lines
1.1 KiB
Docker
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
|
|
|