Ce projet deploie automatiquement un registre Docker prive sur AWS.
- Une instance EC2
t3.micro(Ubuntu 24.04) - Registre Docker sur le port
5000 - Interface web sur le port
80 - Authentification basique
htpasswd
infra/: code Terraform (provisioning AWS)config/: code Ansible (configuration serveur + stack Docker)
cd infra
terraform init
terraform apply -auto-approveResultat attendu :
- Instance EC2 creee
- Fichier
registry-key.pemgenere - IP publique affichee dans l'output
public_ip
Dans config/inventory.ini, remplacer l'IP :
[registry]
registry-host ansible_host=<PUBLIC_IP> ansible_user=ubuntu ansible_ssh_private_key_file=../infra/registry-key.pemcd ../config
chmod 400 ../infra/registry-key.pem
ansible-playbook -i inventory.ini deploy.ymlResultat attendu :
- Docker installe
- Dossiers
/home/ubuntu/registry/...crees - Fichier d'authentification genere
- Services
registryetuidemarres
Ajouter le registre en insecure (daemon Docker local), puis :
docker login <PUBLIC_IP>:5000
docker pull hello-world
docker tag hello-world <PUBLIC_IP>:5000/test-aws:v1
docker push <PUBLIC_IP>:5000/test-aws:v1- Utilisateur :
admin - Mot de passe :
password