Atualizado em: 12 de fevereiro de 2025

Instalando o Docker
O Docker pode ser instalado no Ubuntu seguindo o seguinte tutorial:
https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu
Para instalá-lo em outras distribuições GNU/Linux acesse o link abaixo.
https://docs.docker.com/engine/installation
Iniciando o Docker Registry
Inicie o conteiner que contém o Registry com os comandos abaixo:
sudo mkdir -p /docker/registry/data; sudo mkdir -p /docker/certs;
Copie ou crie o certificado e chave privada para /docker/certs. A parte de criação do certificado não será mostrada nesse tutorial. Hipoteticamente o nome dos arquivos será dockerregistry.crt (para o certificado) e dockerregistry.key (para a chave privada do certificado).
OBS.: Comandos que usei para gerar o certificado autoassinado:
Referência: https://justin.kelly.org.au/how-to-create-a-self-sign-ssl-cert-with-no-pa/
cd /docker/certs sudo openssl genrsa -out dockerregistry.key 2048 sudo openssl req -new -sha256 -days 3650 -key dockerregistry.key -out dockerregistry.csr sudo openssl x509 -req -days 3650 -sha256 -in dockerregistry.csr -signkey dockerregistry.key -out dockerregistry.crt
Inicie o conteiner do Docker Registry.
docker run -d --name registry \ -p 443:443 \ --restart=always \ -v /docker/certs:/certs \ -v /docker/registry/data:/var/lib/registry \
-e REGISTRY_HTTP_ADDR=0.0.0.0:443 \ -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/dockerregistry.crt \ -e REGISTRY_HTTP_TLS_KEY=/certs/dockerregistry.key \ registry:2
Usando os comandos acima, o conteiner do Registry será iniciado como serviço. Mesmo que o conteiner pare, ele será reiniciado.
Como no conteiner, os dados são perdidos quando o mesmo é removido, os dados do Registry serão persistidos no host storage no diretório /docker/registry/data. Os dados do certificado serão persistidos em /docker/certs.
O Docker Registry é uma alternativa ao Docker Hub para hospedagem de imagens privadas de forma gratuita. Saiba mais sobre o Registry em: https://distribution.github.io/distribution/
O registry ficará acessível em: https://ip-servidor/
Referências:
https://distribution.github.io/distribution/about/deploying
https://hub.docker.com/_/registry
https://www.docker.com/blog/how-to-use-your-own-registry-2
Iniciando o Portainer (Interface Web para o Docker)
Inicie o conteiner que contém a interface web para o Docker com os comandos abaixo:
sudo mkdir -p /docker/portainer/data;
Portainer com HTTPS (certificado gerado automaticamente):
docker volume create portainer_data PORTAINER_VERSION='2.26.0' docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:"$PORTAINER_VERSION"
Como no conteiner, os dados são perdidos quando o mesmo é removido, os dados do Portainer serão persistidos no host storage no diretório /docker/portainer/data. Saiba mais sobre o Portainer em: http://portainer.io
O portainer ficará acessível em: https://ip-servidor:9443/ (com HTTPS) ou http://ip-servidor:8000/ (com HTTP)
Mais informações sobre o Portainer podem ser obtidas em:
Deixe um comentário