{"id":21273279,"url":"https://github.com/sclorg/s2i-ruby-container","last_synced_at":"2025-04-12T20:46:10.915Z","repository":{"id":27539015,"uuid":"31020431","full_name":"sclorg/s2i-ruby-container","owner":"sclorg","description":"Ruby container images based on Red Hat Software Collections and intended for OpenShift and general usage, that provide a platform for building and running Ruby applications. Users can choose between Red Hat Enterprise Linux, Fedora, and CentOS based images.","archived":false,"fork":false,"pushed_at":"2025-03-11T03:34:36.000Z","size":581,"stargazers_count":55,"open_issues_count":9,"forks_count":157,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-04T00:09:27.076Z","etag":null,"topics":["centos","container","docker","dockerfile","fedora","openshift","rhel","ruby","s2i","source-to-image"],"latest_commit_sha":null,"homepage":"http://softwarecollections.org","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sclorg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-02-19T15:03:39.000Z","updated_at":"2025-02-18T10:30:33.000Z","dependencies_parsed_at":"2023-02-10T19:15:57.194Z","dependency_job_id":"6b0a9443-dd5e-41df-befd-285d57037dff","html_url":"https://github.com/sclorg/s2i-ruby-container","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-ruby-container","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-ruby-container/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-ruby-container/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-ruby-container/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sclorg","download_url":"https://codeload.github.com/sclorg/s2i-ruby-container/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248631702,"owners_count":21136559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["centos","container","docker","dockerfile","fedora","openshift","rhel","ruby","s2i","source-to-image"],"created_at":"2024-11-21T09:13:17.472Z","updated_at":"2025-04-12T20:46:10.908Z","avatar_url":"https://github.com/sclorg.png","language":"Shell","readme":"Ruby container images\n==================\n\n[![Build and push images to Quay.io registry](https://github.com/sclorg/s2i-ruby-container/actions/workflows/build-and-push.yml/badge.svg)](https://github.com/sclorg/s2i-ruby-container/actions/workflows/build-and-push.yml)\n\nImages available on Quay are:\n* Fedora [ruby-30](https://quay.io/repository/fedora/ruby-30)\n* Fedora [ruby-33](https://quay.io/repository/fedora/ruby-33)\n* CentOS Stream 10 [ruby-33-c10s](https://quay.io/repository/sclorg/ruby-33-c10s)\n\nThis repository contains the source for building various versions of\nthe Ruby application as a reproducible container image using\n[source-to-image](https://github.com/openshift/source-to-image).\nUsers can choose between RHEL and CentOS based builder images.\nThe resulting image can be run using [podman](https://github.com/containers/libpod).\n\nFor more information about using these images with OpenShift, please see the\nofficial [OpenShift Documentation](https://docs.okd.io/latest/using_images/s2i_images/ruby.html).\n\nVersions\n---------------\nRuby versions currently provided are:\n* [Ruby 2.5](2.5/README.md)\n* [Ruby 3.0](3.0/README.md)\n* [Ruby 3.3](3.3/README.md)\n\nRHEL versions currently supported are:\n* RHEL8\n* RHEL9\n* RHEL10\n\nCentOS versions currently supported are:\n* CentOS Stream 9\n* CentOS Stream 10\n\nA Ruby 1.9 image can be built from [this third party repository](https://github.com/getupcloud/s2i-ruby/).\nIt is not maintained by Red Hat nor is part of the OpenShift project.\n\n\nInstallation\n---------------\nTo build a Ruby image, choose either the CentOS or RHEL based image:\n*  **RHEL based image**\n\n    These images are available in the\n    [Red Hat Container Catalog](https://access.redhat.com/containers/#/registry.access.redhat.com/rhel9/ruby-30).\n    To download it run:\n\n    ```\n    $ podman pull registry.access.redhat.com/rhel9/ruby-30\n    ```\n\n    To build a RHEL based Ruby image, you need to run the build on a properly\n    subscribed RHEL machine.\n\n    ```\n    $ git clone --recursive https://github.com/sclorg/s2i-ruby-container.git\n    $ cd s2i-ruby-container\n    $ make build TARGET=rhel9 VERSIONS=3.0\n    ```\n\n*  **CentOS Stream based image**\n\n    This image is available on DockerHub. To download it run:\n\n    ```\n    $ podman pull quay.io/sclorg/ruby-30-c9s\n    ```\n\n    To build a Ruby image from scratch run:\n\n    ```\n    $ git clone --recursive https://github.com/sclorg/s2i-ruby-container.git\n    $ cd s2i-ruby-container\n    $ make build TARGET=c9s VERSIONS=3.0\n    ```\n\nNote: while the installation steps are calling `podman`, you can replace any such calls by `docker` with the same arguments.\n\n**Notice: By omitting the `VERSIONS` parameter, the build/test action will be performed\non all provided versions of Ruby.**\n\n\n\nUsage\n---------------------------------\n\nFor information about usage of Dockerfile for Ruby 2.5,\nsee [usage documentation](2.5/README.md).\n\nFor information about usage of Dockerfile for Ruby 3.0,\nsee [usage documentation](3.0/README.md).\n\nFor information about usage of Dockerfile for Ruby 3.3,\nsee [usage documentation](3.3/README.md).\n\nTest\n---------------------\nThis repository also provides a [S2I](https://github.com/openshift/source-to-image) test framework,\nwhich launches tests to check functionality of a simple Ruby application built on top of the s2i-ruby image.\n\nUsers can choose between testing a Ruby test application based on a RHEL or CentOS image.\n\n*  **RHEL based image**\n\n    To test a RHEL9-based Ruby image, you need to run the test on a properly\n    subscribed RHEL machine.\n\n    ```\n    $ cd s2i-ruby-container\n    $ make test TARGET=rhel9 VERSIONS=3.0\n    ```\n\n*  **CentOS Stream based image**\n\n    ```\n    $ cd s2i-ruby-container\n    $ make test TARGET=c9s VERSIONS=3.0\n    ```\n\n**Notice: By omitting the `VERSIONS` parameter, the build/test action will be performed\non all the provided versions of Ruby.**\n\n\nRepository organization\n------------------------\n* **`\u003cruby-version\u003e`**\n\n    Dockerfile and scripts to build container images from.\n\n* **`common/`**\n\n    Folder containing scripts which are responsible for build and test actions performed by the `Makefile`.\n    It is a github sub-module pointing to https://github.com/sclorg/container-common-scripts.\n\n\nImage name structure\n------------------------\n\n1. Platform name (lowercase) - ruby\n2. Platform version(without dots) - 30\n3. Base builder image - c9s/rhel8\n\nExamples: `ruby-30-c9s`, `ruby-30`\n\n\nRepository organization\n------------------------\n* **`\u003cruby-version\u003e`**\n\n    * **Dockerfile.c9s**\n\n        CentOS Stream based Dockerfile.c9s.\n\n    * **Dockerfile.rhel8**\n\n        RHEL based Dockerfile. In order to perform build or test actions on this\n        Dockerfile you need to run the action on a properly subscribed RHEL machine.\n\n    * **`s2i/bin/`**\n\n        This folder contains scripts that are run by [S2I](https://github.com/openshift/source-to-image):\n\n        *   **assemble**\n\n            Used to install the sources into the location where the application\n            will be run and prepare the application for deployment (eg. installing\n            modules using bundler, etc.)\n\n        *   **run**\n\n            This script is responsible for running the application by using the\n            application web server.\n\n        *   **usage***\n\n            This script prints the usage of this image.\n\n    * **`root/`**\n\n        This folder contains scripts that are put into the container image.\n\n    * **`test/`**\n\n        This folder contains a [S2I](https://github.com/openshift/source-to-image)\n        test framework with a simple Rack server.\n\n        * **`puma-test-app/`**\n\n            Simple Puma web server used for testing purposes by the [S2I](https://github.com/openshift/source-to-image) test framework.\n\n        * **`rack-test-app/`**\n\n            Simple Rack web server used for testing purposes by the [S2I](https://github.com/openshift/source-to-image) test framework.\n\n        * **run**\n\n            Script that runs the [S2I](https://github.com/openshift/source-to-image) test framework.\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsclorg%2Fs2i-ruby-container","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsclorg%2Fs2i-ruby-container","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsclorg%2Fs2i-ruby-container/lists"}