Como empurrar uma imagem de um estivador para um repositório privado
Tenho uma imagem da doca etiquetada como eu/minha imagem, e tenho um reporte privado na doca chamado "eu/privado". Quando empurro a minha "eu/minha imagem", acabo sempre a bater no reporte público.
Qual é a sintaxe exata para empurrar especificamente a minha imagem para o meu repo privado?
362
3
Você precisa etiquetar sua imagem corretamente primeiro com o seu
registrador
:Depois empurra a doca usando essa mesma etiqueta.
Exemplo:
Primeiro vai à tua conta no Docker Hub e faz o reporte. Aqui está uma captura de ecrã da minha conta no Docker Hub:
Pela foto, você pode ver que o meu repo é "chuangg".
Agora entre no repo e torne-o privado, clicando no nome da sua imagem. Então para mim, cliquei em "chuangg/gene_commited_image", depois fui para Settings -> Make Private. Depois segui as instruções no ecrã
COMO CARREGAR A SUA IMAGEM DE DOCA NO CENTRO DE ATRACAGEM
Método #1= Empurrando sua imagem através da linha de comando (cli)
docker commit /
Sim, acho que tem de ser a identificação do contentor. Provavelmente não pode ser o ID da imagem.
Por exemplo=
docker commit 99e078826312 chuangg/gene_commited_image
docker run -it chaung/gene_commited_image
docker login --username= --password=
Por exemplo=
docker login --username=chuangg --email=gc.genechaung@gmail.com
Sim, você tem que fazer o login primeiro. Sair usando o "logout da doca".
docker push chuangg/gene_commited_image
Método #2= Empurrando sua imagem usando pom.xml e linha de comando.
Nota, usei um Perfil Maven chamado "build-docker". Se você não quiser utilizar um perfil, basta remover os elementos
, and build-docker
.Dentro da pom.xml pai:
Comando Docker Terminal para implantar a Imagem Docker (do diretório onde seu pom.xml está localizado)=
mvn clean deploy -Pbuild-docker docker:push
Nota, a diferença entre o Método #2 e #3 é que o Método #3 tem um `` extra para o deployment.
Método #3= Usando Maven para implantar automaticamente no Docker Hub
Adicione este material ao seu pom.xml pai:
Vá ao directório C:\Users/Gene.docker e adicione isto ao seu ficheiro config.json:
Agora no seu Docker Quickstart Terminal type=
mvn clean install -Pbuild-docker
.Para aqueles que não utilizam Maven Profiles, basta digitar
mvn clean install
.Aqui está a captura de tela da mensagem de sucesso:
Aqui está meu pom.xml completo e uma captura de tela da estrutura do meu diretório:
Aqui está o meu Directório Eclipse:
Aqui está o meu Dockerfile:
Erro Comum #1:
Solução para o Erro #1= Não sincronizar o `
com a fase de implantação maven porque então maven tenta implantar a imagem 2x e coloca um carimbo de tempo no jarro. É por isso que eu usei
install`.Há duas opções:
Entre no centro, e crie o repositório primeiro, e marque-o como privado. Depois, quando você pressionar esse repo, ele será privado. Esta é a abordagem mais comum.
Entre na sua conta do hub da doca e vá para as suas configurações globais. Há uma configuração que te permite definir qual é a tua visibilidade padrão para os repositórios que carregas. Por defeito está definido para público, mas se o mudares para privado, todos os teus repositórios que carregares serão marcados como privados por defeito. É importante notar que você precisará ter suficientes repositórios privados disponíveis em sua conta, ou então o repo será bloqueado até que você atualize seu plano.