Cloudflare Serverless Registry : un registre de conteneurs sans serveur basé sur les travailleurs de Cloudflare
Introduction générale
Cloudflare Serverless Registry est un registre de conteneurs sans serveur basé sur les travailleurs Cloudflare et le stockage R2. Il prend en charge le push et le pull d'images et fournit une authentification JWT basée sur le nom d'utilisateur, le mot de passe et la clé publique. Le projet est facile à déployer, compatible avec les opérations Docker et adapté à la gestion des images de conteneurs dans un environnement sans serveur. Malgré quelques limitations, Serverless Registry fournit une solution légère et évolutive pour les développeurs.
Liste des fonctions
- Support de poussée et de traction pour les miroirs
- Fournir le nom d'utilisateur, le mot de passe et l'authentification JWT
- Fonctionnement compatible avec Docker
- Prise en charge du repli sur d'autres registres
- Facile à déployer et à gérer
Utiliser l'aide
Installation et déploiement
- Installation des dépendances: Utilisez pnpm pour installer toutes les dépendances (d'autres gestionnaires de paquets peuvent fonctionner, mais seul pnpm est pris en charge).
$ pnpm install
- Préparation du fichier wranglerCopier le fichier d'exemple et le configurer.
$ cp wrangler.toml.example wrangler.toml
- Définition du panier de stockage R2Création d'une unité de stockage R2 : Créer une unité de stockage R2.
$ npx wrangler --env production r2 bucket create r2-registry
- Configuration de wrangler.tomlAjouter la configuration du seau de stockage R2 au fichier wrangler.toml.
r2_buckets = [ { binding = "REGISTRY", bucket_name = "r2-registry" } ]
- Registre de déploiementLe registre peut être déployé dans un environnement de production.
$ npx wrangler deploy --env production
Authentification par nom d'utilisateur et mot de passe
- Définition du nom d'utilisateur et du mot de passeLe nom d'utilisateur et le mot de passe sont confidentiels.
$ npx wrangler secret put USERNAME --env production $ npx wrangler secret put PASSWORD --env production
Certification JWT
- Ajouter la clé publique JWTAjouter une clé publique JWT encodée en base64 pour authentifier le mot de passe ou le jeton.
$ npx wrangler secret put JWT_REGISTRY_TOKENS_PUBLIC_KEY --env production
Pousser et tirer des images avec Docker
- Se connecter à DockerConnexion à Docker : Connectez-vous à Docker avec votre nom d'utilisateur et votre mot de passe.
export REGISTRY_URL=your-url-here echo $PASSWORD | docker login --username $USERNAME --password-stdin $REGISTRY_URL
- miroir poussoir (informatique)L'image est transférée dans le registre.
docker pull ubuntu:latest docker tag ubuntu:latest $REGISTRY_URL/ubuntu:latest docker push $REGISTRY_URL/ubuntu:latest
- Tirer les miroirsL'image est extraite de la base de données.
docker rmi ubuntu:latest docker pull $REGISTRY_URL/ubuntu:latest
Configuration pullback
- Définition du registre de secoursLe registre de secours est configuré dans le fichier wrangler.toml.
[env.production] REGISTRIES_JSON = "[{ \"registry\": \"url-to-other-registry\", \"password_env\": \"REGISTRY_TOKEN\", \"username\": \"username-to-use\" }]"
- Définition du jeton de registreLe code d'accès au registre est confidentiel.
cat ./registry-service-credentials.json | base64 | wrangler --env production secrets put REGISTRY_TOKEN
© déclaration de droits d'auteur
Article copyright Cercle de partage de l'IA Tous, prière de ne pas reproduire sans autorisation.
Articles connexes
Pas de commentaires...