Skip to content

Eternals Docker Registry

In Progress

Eternals Docker Registry is a private container image registry that implements the Docker Registry HTTP API v2. Store, manage, and distribute container images on your own infrastructure with full authentication and access control.

LayerTechnology
API serverNestJS
DatabasePostgreSQL
Image storageMinIO / S3
  • Private image repositories — Host images without Docker Hub
  • Token-based authentication — Secure push/pull with scoped access tokens
  • Image versioning and tagging — Full tag management and digest-based addressing
  • S3/MinIO storage — Scalable, durable artifact storage
  • CI/CD integration — Works with GitHub Actions, GitLab CI, and Jenkins (planned)
  • Repository access control — Fine-grained per-repository permissions
Terminal window
# Log in to your registry
docker login registry.your-domain.com
# Tag your image
docker tag my-app:latest registry.your-domain.com/your-org/my-app:latest
# Push
docker push registry.your-domain.com/your-org/my-app:latest
Terminal window
docker pull registry.your-domain.com/your-org/my-app:latest
Terminal window
docker push → Auth (JWT) → Manifest (PostgreSQL) → Layer blobs (MinIO/S3)
docker pull → Auth (JWT) → Manifest resolve → Layer blobs stream
Terminal window
- name: Log in to Eternals Registry
uses: docker/login-action@v3
with:
registry: registry.your-domain.com
username: ${{ secrets.REGISTRY_USERNAME }}
password: ${{ secrets.REGISTRY_PASSWORD }}
- name: Build and push
uses: docker/build-push-action@v5
with:
push: true
tags: registry.your-domain.com/your-org/app:latest
Terminal window
services:
docker-registry:
image: eternals/docker-registry:latest
environment:
DATABASE_URL: postgresql://user:pass@db:5432/registry
S3_ENDPOINT: http://minio:9000
S3_BUCKET: docker-images
S3_ACCESS_KEY: minioadmin
S3_SECRET_KEY: minioadmin
JWT_SECRET: your-secret-key
ports:
- "5000:5000"
minio:
image: minio/minio
command: server /data --console-address ":9001"
ports:
- "9000:9000"
- "9001:9001"

Eternals Docker Registry aims to be a production-grade alternative to Docker Hub, GHCR, and AWS ECR — running entirely on your own infrastructure with deep integration into the wider Eternals ecosystem.