Skip to content

feat: migrate container images to Project Hummingbird base images#5

Merged
maxamillion merged 1 commit into
LobsterTrap:midstreamfrom
maxamillion:container-builds
Apr 3, 2026
Merged

feat: migrate container images to Project Hummingbird base images#5
maxamillion merged 1 commit into
LobsterTrap:midstreamfrom
maxamillion:container-builds

Conversation

@maxamillion

Copy link
Copy Markdown

Summary

  • Migrates all production and CI container images from Ubuntu/Docker Hub base images to Project Hummingbird equivalents for minimal, hardened, and secure container images.

Changes

deploy/docker/Dockerfile.images

Stage Old base New base
rust-builder-base rust:1.88-slim quay.io/hummingbird/rust:latest-builder
gateway ubuntu:24.04 quay.io/hummingbird/core-runtime:latest-openssl
k9s download ubuntu:24.04 quay.io/hummingbird/curl:latest-builder
helm download ubuntu:24.04 quay.io/hummingbird/curl:latest-builder
nvidia-container-toolkit ubuntu:24.04 quay.io/hummingbird/core-runtime:latest-builder
cluster ubuntu:24.04 quay.io/hummingbird/core-runtime:latest-builder
  • Gateway uses distroless core-runtime:latest-openssl (ca-certs + OpenSSL included, no package manager needed)
  • Gateway user changed from custom openshell user to Hummingbird default UID 65532
  • Cluster uses builder variant (needs bash for entrypoint/healthcheck scripts)
  • NVIDIA container toolkit switched from Debian apt repo to RPM repo
  • All apt-get commands converted to dnf for Fedora-based images

deploy/docker/Dockerfile.ci

  • ubuntu:24.04 -> quay.io/hummingbird/core-runtime:latest-builder
  • All package installs converted from apt to dnf with Fedora package names

examples/bring-your-own-container/Dockerfile

  • python:3.13-slim -> quay.io/hummingbird/python:3.13-builder
  • iproute2 -> iproute (Fedora package name)

examples/private-ip-routing/Dockerfile

  • python:3.13-slim -> quay.io/hummingbird/python:3.13 (distroless)

Out of scope

  • Dockerfile.python-wheels-macos and Dockerfile.cli-macos (macOS cross-compilation)
  • cross-build.sh (cross-compilation toolchain — needs separate investigation for Fedora adaptation)
  • Community sandbox images (openshell-community repo)

Testing

CI image must be rebuilt after merging. Trigger manually:

gh workflow run "Build CI Image" --repo LobsterTrap/OpenShell --ref midstream

Replace all Ubuntu and Docker Hub base images with Project Hummingbird
equivalents for minimal, hardened, and secure container images:

- Gateway: ubuntu:24.04 -> quay.io/hummingbird/core-runtime:latest-openssl
- Cluster: ubuntu:24.04 -> quay.io/hummingbird/core-runtime:latest-builder
- Rust build: rust:1.88-slim -> quay.io/hummingbird/rust:latest-builder
- Download stages: ubuntu:24.04 -> quay.io/hummingbird/curl:latest-builder
- NVIDIA CTK: switched from Debian apt repo to RPM repo
- CI image: ubuntu:24.04 -> quay.io/hummingbird/core-runtime:latest-builder
- Sandbox examples: python:3.13-slim -> quay.io/hummingbird/python:3.13

All apt-get commands converted to dnf for Fedora-based Hummingbird images.
Cross-compilation Dockerfiles are out of scope for this change.

Signed-off-by: Adam Miller <admiller@redhat.com>
@coderabbitai

coderabbitai Bot commented Apr 3, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 41950461-d824-4020-883d-7907f2ac55b0

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands and usage tips.

@maxamillion maxamillion merged commit d200bfa into LobsterTrap:midstream Apr 3, 2026
9 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant