Docker Registry na Ubuntu 20.04

Przetłumaczone automatycznie z angielskiego. Przeczytaj oryginał

Docker Registry może się przydać w różnych scenariuszach, ale najczęściej będzie to oprogramowanie do orkiestracji kontenerów, takie jak Kubernetes, OpenShift/OKD czy Nomad. W przykładowym środowisku możesz mieć skonfigurowany pipeline Gitlab CI, który buduje obraz Dockera i wypycha go do Twojego registry, a następnie oprogramowanie do orkiestracji wdraża go na klaster.

Aby zainstalować wewnętrzne, prywatne Docker Registry, najpierw trzeba zainstalować pakiet Docker.

Bash
sudo apt update
sudo apt install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"
apt-cache policy docker-ce
sudo apt install docker-ce
sudo systemctl status docker

Następnie trzeba zdobyć certyfikat i uruchomić kontener docker registry:

Bash
sudo docker run -d --restart=always --name registry -v /home/user/certs:/certs -e REGISTRY_HTTP_ADDR=0.0.0.0:443 -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/certfile.pem -e REGISTRY_HTTP_TLS_KEY=/certs/keyfile.key -p 443:443 registry:2

W ten sposób uruchamiamy kontener registry, który zawsze będzie działał. Wiążemy go z portem 443, więc potrzebujemy ważnego certyfikatu i klucza dla domeny. Możesz utworzyć rekord A dla publicznego lub prywatnego adresu IP. Pierwsza opcja jest łatwiejsza, ale druga byłaby bezpieczniejsza. W obu przypadkach nie trzeba konfigurować insecure registries, bo registry będzie udostępniane przez połączenie TLS.

Po konfiguracji wystarczy zbudować, otagować i wypchnąć obraz kontenera do tego registry.

Wersja Markdown

Wszystkie treści na tej stronie są udostępniane na licencji Uznanie autorstwa – Użycie niekomercyjne – Bez utworów zależnych 4.0 Międzynarodowe (CC BY-NC-ND 4.0). Cytuj jako: Michał Sobczak, „Docker Registry na Ubuntu 20.04”, 26 sierpnia 2022, https://michalasobczak.pl/pl/posts/docker-registry-on-ubuntu-20-04.html