Skip to content

Commit

Permalink
Add Dockerfile.rhel10 for version 3.3 in order to support building an…
Browse files Browse the repository at this point in the history
…d testing

container in RHEL10

Signed-off-by: Petr "Stone" Hracek <[email protected]>
  • Loading branch information
phracek committed Jan 16, 2025
1 parent e9d17bb commit 00e1eaa
Showing 1 changed file with 65 additions and 0 deletions.
65 changes: 65 additions & 0 deletions 3.3/Dockerfile.rhel10
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
FROM registry.stage.redhat.io/ubi10/s2i-base

# This image provides a Ruby environment you can use to run your Ruby
# applications.

EXPOSE 8080

ENV RUBY_MAJOR_VERSION=3 \
RUBY_MINOR_VERSION=3

ENV RUBY_VERSION="${RUBY_MAJOR_VERSION}.${RUBY_MINOR_VERSION}" \
RUBY_SCL_NAME_VERSION="${RUBY_MAJOR_VERSION}${RUBY_MINOR_VERSION}"

ENV RUBY_SCL="ruby-${RUBY_SCL_NAME_VERSION}" \
IMAGE_NAME="ubi10/ruby-${RUBY_SCL_NAME_VERSION}" \
SUMMARY="Platform for building and running Ruby $RUBY_VERSION applications" \
DESCRIPTION="Ruby $RUBY_VERSION available as container is a base platform for \
building and running various Ruby $RUBY_VERSION applications and frameworks. \
Ruby is the interpreted scripting language for quick and easy object-oriented programming. \
It has many features to process text files and to do system management tasks (as in Perl). \
It is simple, straight-forward, and extensible."

LABEL summary="$SUMMARY" \
description="$DESCRIPTION" \
io.k8s.description="$DESCRIPTION" \
io.k8s.display-name="Ruby ${RUBY_VERSION}" \
io.openshift.expose-services="8080:http" \
io.openshift.tags="builder,ruby,ruby${RUBY_SCL_NAME_VERSION},${RUBY_SCL}" \
com.redhat.component="${RUBY_SCL}-container" \
name="${IMAGE_NAME}" \
version="1" \
com.redhat.license_terms="https://www.redhat.com/en/about/red-hat-end-user-license-agreements#UBI" \
usage="s2i build https://github.com/sclorg/s2i-ruby-container.git \
--context-dir=${RUBY_VERSION}/test/puma-test-app/ ${IMAGE_NAME} ruby-sample-app" \
maintainer="SoftwareCollections.org <[email protected]>"

RUN INSTALL_PKGS=" \
libffi-devel \
ruby \
ruby-devel \
rubygem-rake \
rubygem-bundler \
ruby-bundled-gems \
redhat-rpm-config \
" && \
dnf install -y --setopt=tsflags=nodocs ${INSTALL_PKGS} && \
dnf reinstall -y --setopt=tsflags=nodocs tzdata && \
dnf -y clean all --enablerepo='*' && \
ruby -v | grep -qe "^ruby $RUBY_VERSION\." && echo "Found VERSION $RUBY_VERSION" && \
rpm -V ${INSTALL_PKGS}

# Copy the S2I scripts from the specific language image to $STI_SCRIPTS_PATH
COPY ./s2i/bin/ $STI_SCRIPTS_PATH

# Copy extra files to the image.
COPY ./root/ /

# Drop the root user and make the content of /opt/app-root owned by user 1001
RUN chown -R 1001:0 ${APP_ROOT} && chmod -R ug+rwx ${APP_ROOT} && \
rpm-file-permissions

USER 1001

# Set the default CMD to print the usage of the language image
CMD $STI_SCRIPTS_PATH/usage

0 comments on commit 00e1eaa

Please sign in to comment.