Container images¶
v1.1.1 introduces multi-arch container image publishing to GitHub
Container Registry (ghcr.io). Every release tag triggers
.github/workflows/docker-publish.yml
which builds and pushes all 4 images.
Available images¶
| Image | Platforms | Size | Source Dockerfile |
|---|---|---|---|
ghcr.io/rollingthunderfourtytwo-afk/fcc-backend |
linux/amd64, linux/arm64 | ~470 MB | docker/Dockerfile.backend |
ghcr.io/rollingthunderfourtytwo-afk/fcc-frontend |
linux/amd64, linux/arm64 | ~75 MB | docker/Dockerfile.frontend |
ghcr.io/rollingthunderfourtytwo-afk/fcc-streamlit |
linux/amd64, linux/arm64 | ~1.4 GB | docker/Dockerfile.streamlit |
ghcr.io/rollingthunderfourtytwo-afk/fcc-jupyter |
linux/amd64 only | ~9 GB | docker/Dockerfile.jupyter |
Why is jupyter amd64-only? The jupyter image pulls torch + CUDA libraries via
sentence-transformersfor the RAG + knowledge-graph notebooks. arm64 builds of that stack are slow and not in demand. File an issue if you need arm64 jupyter.
Available tags¶
Each release publishes the following tags to every image:
| Tag | Example | Notes |
|---|---|---|
| Full version | 1.1.1 |
Pinned to the exact git tag |
| Minor | 1.1 |
Auto-moves to the latest patch in the series |
| Latest | latest |
Only for releases on the default branch |
| Git SHA | sha-89b6bd4 |
Exact commit hash (short) |
Best practice: pin to the full version (1.1.1) in production. Use
1.1 for development/staging if you want to auto-upgrade to patches.
Avoid latest unless you have automated rollback.
Pulling images¶
No authentication is required — the images are public:
docker pull ghcr.io/rollingthunderfourtytwo-afk/fcc-backend:1.1.1
docker pull ghcr.io/rollingthunderfourtytwo-afk/fcc-frontend:1.1.1
docker pull ghcr.io/rollingthunderfourtytwo-afk/fcc-streamlit:1.1.1
docker pull ghcr.io/rollingthunderfourtytwo-afk/fcc-jupyter:1.1.1
Verify the digest to confirm authenticity:
Image provenance¶
All images are built by the docker-publish.yml GitHub Actions workflow
from a verified commit on the main branch. Every image has the
following labels:
org.opencontainers.image.source→ the git repo URLorg.opencontainers.image.revision→ the git commit SHAorg.opencontainers.image.version→ the semver tagorg.opencontainers.image.created→ build timestamp
Inspect with:
docker inspect ghcr.io/rollingthunderfourtytwo-afk/fcc-backend:1.1.1 \
--format '{{json .Config.Labels}}' | jq
Offline distribution¶
For air-gapped environments, save + load the images:
# On a machine with internet access
docker pull ghcr.io/rollingthunderfourtytwo-afk/fcc-backend:1.1.1
docker save -o fcc-backend-1.1.1.tar ghcr.io/rollingthunderfourtytwo-afk/fcc-backend:1.1.1
# Transfer the tarball to the target host, then
docker load -i fcc-backend-1.1.1.tar
Building your own¶
If you want to build the images yourself (e.g. for a private registry or a custom fork):
git clone https://github.com/rollingthunderfourtytwo-afk/l2_fcc_agent_team_ext.git
cd l2_fcc_agent_team_ext
make docker-build
Tag and push to your registry:
docker tag fcc-backend:dev registry.internal/fcc-backend:1.1.1
docker push registry.internal/fcc-backend:1.1.1
Then point the Helm chart at your registry via global.imageRegistry.