本文へスキップ

Serverless Registry

活発
cloudflare/serverless-registry

Cloudflare Workers 上で動く Docker 互換のコンテナレジストリ。イメージレイヤーは R2 に保存されます。

GitHub で見る
スター
1463
フォーク
124
ウォッチ
1463
未解決の Issue
40

この紹介文は現在英語版のみです。

Overview

Serverless Registry is a container image registry that runs entirely on Cloudflare Workers, with layers and manifests stored in R2. It implements the push and pull workflows Docker expects, so you can host private images on Cloudflare without running a registry server.

Key Features

  • Full push and pull support for standard container tooling
  • R2 storage for image layers and manifests
  • Authentication with username/password or public-key JWTs
  • Pull fallback to upstream registries such as Docker Hub or GitHub Container Registry, with optional credentials to avoid rate limits
  • No servers to manage — scales with Workers

Getting Started

The project uses pnpm:

pnpm install
cp wrangler.example.jsonc wrangler.jsonc
npx wrangler --env production r2 bucket create r2-registry

Bind the bucket in your Wrangler config as REGISTRY, store credentials with wrangler secret put (never in the config file), and deploy:

npx wrangler deploy --env production

Then log in and push like any other registry:

echo $PASSWORD | docker login --username $USERNAME --password-stdin $REGISTRY_URL
docker push $REGISTRY_URL/my-image:latest

Known Limitations

Pushing with Docker is limited to layers of about 500 MB, because each layer upload must fit within your Workers plan’s maximum request body size. Larger layers can be uploaded to the R2 bucket directly as a workaround.

Use Cases

  • Private registry for small teams or side projects without a monthly registry bill
  • Storing CI build artifacts as images next to your other Cloudflare resources
  • A lightweight mirror for frequently pulled base images

License

Apache License 2.0.

共通のカテゴリとタグで順位付けした、似たオープンソースプロジェクトです。

すべての DevOps プロジェクト →