FROM openshift3/playbook2image MAINTAINER OpenShift Team LABEL name="openshift3/ose-ansible" \ summary="OpenShift's installation and configuration tool" \ description="A containerized openshift-ansible image to let you run playbooks to install, upgrade, maintain and check an OpenShift cluster" \ url="https://github.com/openshift/openshift-ansible" \ io.k8s.display-name="openshift-ansible" \ io.k8s.description="A containerized openshift-ansible image to let you run playbooks to install, upgrade, maintain and check an OpenShift cluster" \ io.openshift.expose-services="" \ io.openshift.tags="openshift,install,upgrade,ansible" \ com.redhat.component="aos3-installation-docker" \ version="v3.6.0" \ release="1" \ architecture="x86_64" # Playbooks, roles and their dependencies are installed from packages. # Unlike in Dockerfile, we don't invoke the 'assemble' script here # because all content and dependencies (like 'oc') is already # installed via yum. USER root RUN INSTALL_PKGS="atomic-openshift-utils atomic-openshift-clients python-boto skopeo openssl java-1.8.0-openjdk-headless httpd-tools" && \ yum repolist > /dev/null && \ yum-config-manager --enable rhel-7-server-ose-3.6-rpms && \ yum-config-manager --enable rhel-7-server-rh-common-rpms && \ yum install -y $INSTALL_PKGS && \ yum clean all # The symlinks below are a (hopefully temporary) hack to work around the fact that this # image is based on python s2i which uses the python27 SCL instead of system python, # and so the system python modules we need would otherwise not be in the path. RUN ln -s /usr/lib/python2.7/site-packages/{boto,passlib} /opt/app-root/lib64/python2.7/ USER ${USER_UID} # The playbook to be run is specified via the PLAYBOOK_FILE env var. # This sets a default of openshift_facts.yml as it's an informative playbook # that can help test that everything is set properly (inventory, sshkeys). # As the playbooks are installed via packages instead of being copied to # $APP_HOME by the 'assemble' script, we set the WORK_DIR env var to the # location of openshift-ansible. ENV PLAYBOOK_FILE=playbooks/byo/openshift_facts.yml \ ANSIBLE_CONFIG=/usr/share/atomic-openshift-utils/ansible.cfg \ WORK_DIR=/usr/share/ansible/openshift-ansible \ OPTS="-v" # Add files for running as a system container COPY system-container/root / CMD [ "/usr/libexec/s2i/run" ]