FROM registry.fedoraproject.org/f26/s2i-base:latest # This image provides a Passenger environment you can use to run your Passenger # applications. EXPOSE 8080 ENV PASSENGER_VERSION=5.0 \ RUBY_VERSION=2.4 \ NODEJS_VERSION=6 ENV SUMMARY="Phusion Passenger $PASSENGER_VERSION web server and application server" \ DESCRIPTION="Phusion Passenger $PASSENGER_VERSION web server and application server configured \ with Apache httpd web server. It also provides a Ruby $RUBY_VERSION platform for \ building and running applications. Node.js $NODEJS_VERSION is preinstalled for \ assets compilation." ENV NAME=passenger \ VERSION=0 \ RELEASE=1 \ ARCH=x86_64 LABEL summary="$SUMMARY" \ description="$DESCRIPTION" \ io.k8s.description="$DESCRIPTION" \ io.k8s.display-name="Passenger $PASSENGER_VERSION" \ io.openshift.expose-services="8080:http" \ io.openshift.tags="builder,passenger,ruby,nodejs" \ com.redhat.component="$NAME" \ name="$FGC/$NAME" \ version="$VERSION" \ release="$RELEASE.$DISTTAG" \ architecture="$ARCH" \ usage="s2i build file:///your/app $FGC/$NAME your-app" \ maintainer="SoftwareCollections.org " RUN INSTALL_PKGS="ruby ruby-devel rubygem-rake rubygem-bundler rubygem-rack passenger nodejs npm mod_passenger httpd nss_wrapper" && \ yum install -y --setopt=tsflags=nodocs $INSTALL_PKGS && \ rpm -V $INSTALL_PKGS && \ yum clean all -y # Copy the STI scripts from the specific language image to $STI_SCRIPTS_PATH COPY ./s2i/bin/ $STI_SCRIPTS_PATH # Copy extra files to the image. COPY ./root/ / COPY README.md /README.md ENV PASSENGER_CONTAINER_SCRIPTS_PATH=/usr/share/container-scripts/passenger/ \ PASSENGER_APP_ROOT=/opt/app-root \ PASSENGER_VAR_RUN=/var/run/passenger \ PASSENGER_SESSION_DIR=/tmp/sessions \ PASSENGER_RUBY_BIN=/usr/bin/ruby \ HTTPD_CONFIGURATION_PATH=/etc/httpd/conf/httpd.conf \ HTTPD_VAR_RUN=/var/run/httpd \ HTTPD_VAR_ORIG_PATH=/var RUN /usr/libexec/passenger-prepare RUN chown -R 1001:0 /opt/app-root USER 1001 # Set the default CMD to print the usage of the language image CMD "$STI_SCRIPTS_PATH/usage"