{"id":29561696,"url":"https://github.com/hpcflow/rockylinux8-python","last_synced_at":"2026-02-06T02:05:04.810Z","repository":{"id":304899472,"uuid":"1020380857","full_name":"hpcflow/rockylinux8-python","owner":"hpcflow","description":"Dockerfile for Rocky Linux 8 with Python 3.13, Poetry and Micromamba","archived":false,"fork":false,"pushed_at":"2025-07-15T19:42:22.000Z","size":2,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-16T23:06:26.847Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hpcflow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-07-15T19:23:36.000Z","updated_at":"2025-07-15T19:42:26.000Z","dependencies_parsed_at":"2025-07-17T06:04:06.853Z","dependency_job_id":"38a0a17d-b929-4ae3-9ec7-354c332f3e7e","html_url":"https://github.com/hpcflow/rockylinux8-python","commit_stats":null,"previous_names":["hpcflow/rockylinux8-python"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/hpcflow/rockylinux8-python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpcflow%2Frockylinux8-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpcflow%2Frockylinux8-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpcflow%2Frockylinux8-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpcflow%2Frockylinux8-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hpcflow","download_url":"https://codeload.github.com/hpcflow/rockylinux8-python/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hpcflow%2Frockylinux8-python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29145565,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-06T01:13:33.096Z","status":"online","status_checked_at":"2026-02-06T02:00:08.092Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-07-18T16:39:34.261Z","updated_at":"2026-02-06T02:05:04.795Z","avatar_url":"https://github.com/hpcflow.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rockylinux8-python\n\nDockerfile for running Python 3.13, poetry, and micromamba within a Rocky Linux 8 container. This is useful for running Pyinstaller to generate executables that use older versions of GLIBC. E.g. see [this discussion](https://github.com/pyinstaller/pyinstaller/discussions/5669). Rocky Linux 8 includes GLIBC 2.28 (dated 2018), and so this is the minimum version of GLIBC that Pyinstaller-built executables will run on. Rocky Linux 8 will be supported until May 2029.\n\n**Example GitHub action that uses this container with PyInstaller**\n\nIn principle setting the `container` key on a job should work:\n\n```yaml\nname: build-executables\non:\n  workflow_dispatch:\njobs:\n  build-executable-CentOS:\n    runs-on: ubuntu-latest\n    container:\n      image: ghcr.io/hpcflow/rockylinux8-python:latest\n    steps:\n      - uses: actions/checkout@v4\n\n      - name: Install dependencies\n        run: poetry install\n\n      - name: Run PyInstaller\n        run: poetry run pyinstaller hpcflow/cli.py --name=hpcflow --onefile\n```\n\nHowever, with our previous old-GLIBC Docker images, we found this stopped working at some point, and instead we do:\n\n```yaml\nname: build-executables\non:\n  workflow_dispatch:\njobs:\n  build-executable-RockyLinux8:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout\n        uses: actions/checkout@v4\n\n      - name: Build executable (file) within Docker\n        uses: addnab/docker-run-action@v3\n        with:\n          image: ghcr.io/hpcflow/rockylinux8-python:latest\n          options: -v ${{ github.workspace }}:/home --env GH_TOKEN=${{ secrets.GITHUB_TOKEN }}\n          run: |\n            # install dependencies\n            poetry install\n\n            # run Pyinstaller\n            poetry run pyinstaller hpcflow/cli.py --name=hpcflow --onefile\n```\n\n\n# Build steps for hosting in the GitHub container registry (GHCR)\n\nThe version tag is specified after the `:`, and should include the python, poetry, and micromamba versions, like this:\n```\ndocker build -t ghcr.io/hpcflow/rockylinux8-python:py3.13.5-poetry2.1.3-micromamba2.3.0-1 .\ndocker push ghcr.io/hpcflow/rockylinux8-python:py3.13.5-poetry2.1.3-micromamba2.3.0-1\n```\n\nWhen updating the latest image use the tag `latest`:\n```\ndocker build -t ghcr.io/hpcflow/rockylinux8-python-poetry:latest .\ndocker push ghcr.io/hpcflow/rockylinux8-python-poetry:latest\n```\n\u003cins\u003e**Make sure to push the image twice**\u003c/ins\u003e! Once with the version tag and another with the latest tag.\n\n\u003e **Note:** you may have to login to ghcr before pushing.\n\u003e For that, first create a personal access token\n\u003e (Settings / Developer settings / New token (classic))\n\u003e with permissions for write and delete packages.\n\u003e Copy the access token!\n\u003e \n\u003e Then use your github username and the copied access token to login with\n\u003e ```\n\u003e docker login ghcr.io\n\u003e ```\n\u003e You should now be ready to push.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhpcflow%2Frockylinux8-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhpcflow%2Frockylinux8-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhpcflow%2Frockylinux8-python/lists"}