Commit 876a4314 authored by Mihai Patrascoiu's avatar Mihai Patrascoiu
Browse files

Add CentOS 8 Dockerfile

parent bbb6cd9a
#
# EOS Docker file for CentOS 8
#
# Version 0.1
FROM centos:8
MAINTAINER Mihai Patrascoiu, mihai.patrascoiu@cern.ch, CERN 2020
# Add extra repositories
ADD eos-docker/el-8/*.repo /etc/yum.repos.d/
# Add helper scripts
ADD eos-docker/image_scripts/*.sh /
# Add configuration files for EOS instance
ADD eos-docker/eos.sysconfig /etc/sysconfig/eos
ADD eos-docker/xrd.cf.* eos-docker/krb5.conf /etc/
ADD eos-docker/fuse.conf /etc/eos/fuse.mount-1.conf
ADD eos-docker/fuse.conf /etc/eos/fuse.mount-2.conf
ADD eos-docker/fstfmd.dict /var/eos/md/
RUN mkdir /var/tmp/eosxd-cache/ /var/tmp/eosxd-journal/
RUN useradd eos-user
# Note: Docker will aggressively cache the following command.
# However, these packages don't change often
RUN dnf -y install epel-release; \
dnf -y --nogpg install \
krb5-workstation createrepo initscripts \
less nano sudo vim at bzip2 git parallel \
rpm-build libgfortran libacl-devel perl-Test-Harness \
gcc-c++ gdb cmake automake autoconf libtool
# Install EOS from locally created repo
# Note: the ADD command will reset the docker cache
# and any commands after that point will be uncached
ENV EOSREPODIR="/repo/eos"
ADD c8_artifacts ${EOSREPODIR}
# Special packages, must be installed un-cached
RUN createrepo ${EOSREPODIR}; \
echo -e "[eos-artifacts]\nname=EOS artifacts\nbaseurl=file://${EOSREPODIR}\ngpgcheck=0\nenabled=1\npriority=1" >> /etc/yum.repos.d/eos.repo; \
dnf -y --nogpg install quarkdb davix; \
dnf -y --nogpg install \
eos-server eos-testkeytab eos-archive eos-client \
eos-debuginfo eos-fuse eos-fusex eos-test eos-ns-inspect
# Generate a new forwardable keytab 'eos-test+' to replace the not-forwardable
# one (installed by the eos-testkeytab package).
# This is useful to deploy EOS on Kubernetes clusters running on CERN's Cloud
# Infrastructure; you can remove these lines if you don't need one.
RUN yes | xrdsssadmin -k eos-test del /etc/eos.keytab; \
yes | xrdsssadmin -u daemon -g daemon -k eos-test+ -n 1234567890123456789 add /etc/eos.keytab; \
chown daemon:daemon /etc/eos.keytab
# Change owner of /var/spool/xrootd directory to daemon
RUN chown daemon:daemon /var/spool/xrootd
ENTRYPOINT ["/bin/bash"]
[eos]
name=EOS Citrine - Commit Version
baseurl=http://storage-ci.web.cern.ch/storage-ci/eos/citrine/commit/el-8/x86_64/
gpgcheck=0
enabled=0
priority=2
[eos-tag]
name=EOS Citrine - Tag Version
baseurl=http://storage-ci.web.cern.ch/storage-ci/eos/citrine/tag/el-8/x86_64/
gpgcheck=0
enabled=0
priority=4
[eos-depend]
name=EOS Citrine Dependencies
baseurl=http://storage-ci.web.cern.ch/storage-ci/eos/citrine-depend/el-8/x86_64/
gpgcheck=0
enabled=1
priority=2
[quarkdb]
name=QuarkDB
baseurl=http://storage-ci.web.cern.ch/storage-ci/quarkdb/tag/el8/x86_64/
gpgcheck=0
enabled=1
npriority=4
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment