MAINTAINER William Yeh <william.pjyeh@gmail.com>
-RUN echo "===> Installing EPEL..." && \
+# enable systemd;
+# @see https://hub.docker.com/_/centos/
+ENV container docker
+
+RUN echo "===> Enabling systemd..." && \
+ (cd /lib/systemd/system/sysinit.target.wants/; for i in *; do [ $i == systemd-tmpfiles-setup.service ] || rm -f $i; done); \
+ rm -f /lib/systemd/system/multi-user.target.wants/*; \
+ rm -f /etc/systemd/system/*.wants/*; \
+ rm -f /lib/systemd/system/local-fs.target.wants/*; \
+ rm -f /lib/systemd/system/sockets.target.wants/*udev*; \
+ rm -f /lib/systemd/system/sockets.target.wants/*initctl*; \
+ rm -f /lib/systemd/system/basic.target.wants/*; \
+ rm -f /lib/systemd/system/anaconda.target.wants/* && \
+ \
+ \
+ echo "===> Installing EPEL..." && \
yum -y install epel-release && \
yum -y update && \
\
yum -y install \
gcc make \
python python-devel python-pip \
+ libffi-devel openssl-devel \
libxml2 libxml2-devel libxslt libxslt-devel \
git sudo curl && \
pip install --upgrade pip && \
sed -i -e 's/^\(Defaults\s*requiretty\)/#--- \1/' /etc/sudoers && \
\
\
- echo "===> Removing unused YUM resources..." && \
- yum -y remove \
- epel-release python-devel python-pip gcc git && \
- yum clean all && \
+ echo "===> Removing unused YUM resources..." && \
+ yum -y remove epel-release gcc git python-devel python-pip \
+ libffi-devel openssl-devel || true && \
+ yum clean all && \
\
\
echo "===> Adding hosts for convenience..." && \
echo 'localhost' > /etc/ansible/hosts
+#
+# [Quote] https://hub.docker.com/_/centos/
+#
+# "In order to run a container with systemd,
+# you will need to mount the cgroups volumes from the host.
+# [...]
+# There have been reports that if you're using an Ubuntu host,
+# you will need to add -v /tmp/$(mktemp -d):/run
+# in addition to the cgroups mount."
+#
+VOLUME [ "/sys/fs/cgroup", "/run" ]
+
+
ENV PATH /opt/ansible/bin:$PATH
ENV PYTHONPATH /opt/ansible/lib:$PYTHONPATH
ENV MANPATH /opt/ansible/docs/man:$MANPATH