{"id":15059125,"url":"https://github.com/sclorg/s2i-python-container","last_synced_at":"2025-03-31T04:01:13.444Z","repository":{"id":29200784,"uuid":"32732089","full_name":"sclorg/s2i-python-container","owner":"sclorg","description":"Python container images based on Red Hat Software Collections and intended for OpenShift and general usage, that provide a platform for building and running Python applications. Users can choose between Red Hat Enterprise Linux, Fedora, and CentOS based images.","archived":false,"fork":false,"pushed_at":"2024-10-08T12:06:24.000Z","size":10405,"stargazers_count":260,"open_issues_count":9,"forks_count":325,"subscribers_count":30,"default_branch":"master","last_synced_at":"2024-10-30T01:38:16.083Z","etag":null,"topics":["centos","container","docker","dockerfile","fedora","openshift","python","rhel","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-03-23T12:53:52.000Z","updated_at":"2024-10-15T07:30:47.000Z","dependencies_parsed_at":"2023-01-14T14:30:48.013Z","dependency_job_id":"dbd19625-03a5-4968-af8e-589d024a71aa","html_url":"https://github.com/sclorg/s2i-python-container","commit_stats":{"total_commits":832,"total_committers":57,"mean_commits":"14.596491228070175","dds":0.6730769230769231,"last_synced_commit":"1e961c19b15b527e477f9e3c78a6c8c5bc32a5fe"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-python-container","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-python-container/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-python-container/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sclorg%2Fs2i-python-container/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sclorg","download_url":"https://codeload.github.com/sclorg/s2i-python-container/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246413227,"owners_count":20773053,"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","python","rhel","s2i","source-to-image"],"created_at":"2024-09-24T22:38:06.726Z","updated_at":"2025-03-31T04:01:13.328Z","avatar_url":"https://github.com/sclorg.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"Python container images\n=======================\n[![Build and push container images to Quay.io registry](https://github.com/sclorg/s2i-python-container/actions/workflows/build-and-push.yml/badge.svg)](https://github.com/sclorg/s2i-python-container/actions/workflows/build-and-push.yml)\n\nImages available on Quay are:\n* RHEL 8 [python-39-minimal-el8](https://quay.io/repository/sclorg/python-39-minimal-el8)\n* RHEL 8 [python-311-minimal-el8](https://quay.io/repository/sclorg/python-311-minimal-el8)\n* RHEL 8 [python-312-minimal-el8](https://quay.io/repository/sclorg/python-312-minimal-el8)\n* CentOS Stream 9 minimal [python-39-minimal-c9s](https://quay.io/repository/sclorg/python-39-minimal-c9s)\n* CentOS Stream 9 [python-39-c9s](https://quay.io/repository/sclorg/python-39-c9s)\n* CentOS Stream 9 minimal [python-311-minimal-c9s](https://quay.io/repository/sclorg/python-311-minimal-c9s)\n* CentOS Stream 9 [python-311-c9s](https://quay.io/repository/sclorg/python-311-c9s)\n* CentOS Stream 9 [python-312-minimal-c9s](https://quay.io/repository/sclorg/python-312-minimal-c9s)\n* CentOS Stream 9 [python-312-c9s](https://quay.io/repository/sclorg/python-312-c9s)\n* Fedora [python-312-minimal](https://quay.io/repository/fedora/python-312-minimal)\n* CentOS Stream 10 [python-312-minimal-c9s](https://quay.io/repository/sclorg/python-312-minimal-c10s)\n* CentOS Stream 10 [python-312-c9s](https://quay.io/repository/sclorg/python-312-c10s)\n* Fedora [python-312](https://quay.io/repository/fedora/python-312)\n* Fedora [python-313](https://quay.io/repository/fedora/python-313)\n\nThis repository contains the source for building various versions of\nthe Python application as a reproducible container image using\n[source-to-image](https://github.com/openshift/source-to-image).\nUsers can choose between RHEL, Fedora and CentOS based builder images.\nThe resulting image can be run using [podman](https://github.com/containers/libpod) or\n[docker](http://docker.io).\n\nFor more information about using these images with OpenShift, please see the\nofficial [OpenShift Documentation](https://docs.okd.io/latest/openshift_images/using_images/using-s21-images.html).\n\nFor more information about concepts used in these container images, see the\n[Landing page](https://github.com/sclorg/welcome).\n\nNote: while the examples in this README are calling `podman`, you can replace any such calls by `docker` with the same arguments\n\nContributing\n---------------\nIn this repository [distgen](https://github.com/devexp-db/distgen/) \u003e 1.0 is used for generating directories for Python versions. Also make sure distgen imports the jinja2 package \u003e= 2.10.\n\nFiles in directories for a specific Python version are generated from templates in the src directory with values from specs/multispec.yml.\n\nA typical way how to contribute is:\n\n1. Add a feature or fix a bug in templates (src directory) or values (specs/multispec.yml file).\n1. Commit the changes.\n1. Regenerate all files via `make generate-all`.\n1. Commit generated files.\n1. Test changes via `make test TARGET=fedora VERSIONS=3.9` which will `build`, `tag` and `test` an image in one step.\n1. Open a pull request!\n\nFor more information about contributing, see\n[the Contribution Guidelines](https://github.com/sclorg/welcome/blob/master/contribution.md).\n\nVersions\n---------------\nPython versions currently provided are:\n* [python-3.6](3.6)\n* [python-3.9](3.9)\n* [python-3.9 Minimal (tech-preview)](3.9-minimal)\n* [python-3.11](3.11)\n* [python-3.11 Minimal (tech-preview)](3.11-minimal)\n* [python-3.12](3.12)\n* [python-3.12 Minimal (tech-preview)](3.12-minimal)\n* [python-3.13](3.13)\n\nRHEL versions currently supported are:\n* RHEL 8 ([catalog.redhat.com](https://catalog.redhat.com/software/containers/search))\n* RHEL 9 ([catalog.redhat.com](https://catalog.redhat.com/software/containers/search))\n* RHEL 10 ([catalog.redhat.com](https://catalog.redhat.com/software/containers/search))\n\nCentOS Stream versions currently supported are:\n* CentOS Stream 9 ([quay.io/sclorg](https://quay.io/organization/sclorg))\n* CentOS Stream 10 ([quay.io/sclorg](https://quay.io/organization/sclorg))\n\nFedora versions currently supported are:\n* Fedora 40 ([quay.io/fedora](https://quay.io/organization/fedora))\n* Fedora 41 ([quay.io/fedora](https://quay.io/organization/fedora))\n\nDownload\n--------\nTo download one of the base Python images, follow the instructions you find in registries mentioned above.\n\nFor example, CentOS Stream image can be downloaded via:\n\n```\n$ podman pull quay.io/c9s/python-39-c9s\n```\n\nBuild\n-----\nTo build a Python image from scratch run:\n\n```\n$ git clone https://github.com/sclorg/s2i-python-container.git\n$ cd s2i-python-container\n$ make build TARGET=c9s VERSIONS=3.9\n```\n\nWhere `TARGET` might be one of the supported platforms mentioned above.\n\n**Notice: By omitting the `VERSIONS` parameter, the build/test action will be performed\non all provided versions of Python.**\n\nUsage\n-----\nFor information about usage of S2I Python images, see the documentation for each version in its folder.\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 simple Python applications built on top of the s2i-python-container image.\n\n```\n$ cd s2i-python-container\n$ make test TARGET=c9s VERSIONS=3.9\n```\n\nWhere `TARGET` might be one of the supported platforms mentioned above.\n\n**Notice: By omitting the `VERSIONS` parameter, the build/test action will be performed\non all provided versions of Python.**\n\n\nRepository organization\n-----------------------\n* **`\u003cpython-version\u003e`**\n\n    * **Dockerfile.c9s**\n\n        CentOS Stream based Dockerfile.\n\n    * **Dockerfile.fedora**\n\n        Fedora based Dockerfile.\n\n    * **Dockerfile.rhel8** \u0026 **Dockerfile.rhel9**\n\n        RHEL 8/9 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            dependencies, 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    * **`test/`**\n\n        This folder contains a [S2I](https://github.com/openshift/source-to-image)\n        test framework with multiple test aplications testing different approaches.\n\n        * **run**\n\n            Script that runs the [S2I](https://github.com/openshift/source-to-image) test framework.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsclorg%2Fs2i-python-container","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsclorg%2Fs2i-python-container","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsclorg%2Fs2i-python-container/lists"}