# This image is the base image for all OpenShift v3 language Docker images. FROM fedora:25 LABEL \ io.openshift.s2i.scripts-url=image:///usr/libexec/s2i \ io.s2i.scripts-url=image:///usr/libexec/s2i ENV NAME=s2i-base \ VERSION=1 \ RELEASE=1 \ ARCH=x86_64 LABEL BZComponent="$NAME" \ Name="$FGC/$NAME" \ Version="$VERSION" \ Release="$RELEASE.$DISTTAG" \ Architecture="$ARCH" ENV \ # DEPRECATED: Use above LABEL instead, because this will be removed in future versions. STI_SCRIPTS_URL=image:///usr/libexec/s2i \ # Path to be used in other layers to place s2i scripts into STI_SCRIPTS_PATH=/usr/libexec/s2i \ # The $HOME is not set by default, but some applications needs this variable # TODO: There is a bug in rhel7.1 image where the PATH variable is not exported # properly as Docker image metadata, which causes the $PATH variable do not # expand properly. HOME=/opt/app-root/src \ PATH=/opt/app-root/src/bin:/opt/app-root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin # This is the list of basic dependencies that all language Docker image can # consume. # Also setup the 'openshift' user that is used for the build execution and for the # application runtime execution. # TODO: Use better UID and GID values RUN dnf repolist > /dev/null && \ INSTALL_PKGS="autoconf \ automake \ bsdtar \ bzip2 \ findutils \ gcc-c++ \ gd-devel \ gdb \ gettext \ git \ libcurl-devel \ libxml2-devel \ libxslt-devel \ lsof \ make \ mariadb-devel \ mariadb-libs \ openssl-devel \ patch \ postgresql-devel \ procps-ng \ redhat-rpm-config \ scl-utils \ sqlite-devel \ tar \ unzip \ wget \ which \ yum-utils \ zlib-devel" && \ mkdir -p ${HOME}/.pki/nssdb && \ chown -R 1001:0 ${HOME}/.pki && \ dnf install -y --setopt=tsflags=nodocs $INSTALL_PKGS && \ rpm -V $INSTALL_PKGS && \ dnf clean all -y && \ useradd -u 1001 -r -g 0 -d ${HOME} -s /sbin/nologin \ -c "Default Application User" default && \ chown -R 1001:0 /opt/app-root # Copy executable utilities. COPY bin/ /usr/bin/ # Directory with the sources is set as the working directory so all STI scripts # can execute relative to this path. WORKDIR ${HOME} CMD ["base-usage"]