Estou seguindo este link para criar minha primeira imagem de janela de encaixe e ela foi bem-sucedida e agora estou tentando inserir essa imagem no meu repositório de janela de encaixe a partir deste link . Mas sempre que estou tentando enviar esta imagem para o repositório, recebo esse tipo de erro.
denied: requested access to the resource is denied
Alguém poderia me dar alguma dica sobre esse problema? Qualquer ajuda seria apreciada.
Nota: Eu entrei com êxito no docker
docker
dockerfile
Keyur Shah
fonte
fonte
Respostas:
Pode ser necessário alternar o repo de docker para privado antes do envio do docker.
Graças à resposta fornecida por Dean Wu e este comentário por ses , antes de enviar, lembre-se de sair e , em seguida, faça login na linha de comando da sua conta do hub docker
De acordo com os documentos :
Portanto, isso significa que você deve marcar sua imagem antes de pressionar:
e então você deve poder pressioná-lo.
fonte
[host]/[namespace]/[repo]
e ainda o mesmo erro (ou seja, tenho organizações e minha conta como o espaço para nome). Até tenteidocker login ...
. Não consigo empurrar: - |Eu tive o mesmo problema ao fazer o curso para iniciantes no docker. Resolvi o problema executando uma
docker login
chamada antes da chamada do docker.fonte
docker login
.sudo docker login
trabalhou para mim. Isso me permitiu empurrar meu repo privado.Eu tive o mesmo problema, mas a resposta aceita fornecida aqui não funcionou para mim. Eu tentei alguns passos e fui capaz de dar um empurrão final. Espero que isso ajude alguém.
Aqui estão as etapas trabalhadas para mim:
1) Faça login na janela de encaixe.
2) Marque sua construção de imagem
meu nome de imagem aqui é: mylocalimage e, por padrão, possui a tag: latest
e meu nome de usuário é: sirimalla como registrado na nuvem docker, e criei um repositório público chamado: dockerhub
então meu repositório pessoal se torna agora: sirimalla / dockerhub e eu quero enviar minha imagem com a tag:
myfirstimagepush
Eu marquei como abaixo:
3) Enviei a imagem para o meu repositório de docker pessoal como abaixo
E foi enviado com sucesso ao meu repositório pessoal de estivadores.
fonte
docker login
. Até chegar a esse tópico, eu não sabiadocker login
.Importante também notar é que, quando você codifica sua imagem, identifica-a usando o Namespace e, em seguida, seu repositório / mydevrepo . Isso me confundiu ao seguir os documentos do Docker. Depois disso eu usei:
E então eu empurrei minha imagem usando o 'nome marcado' .
fonte
Use os comandos abaixo:
por exemplo, eu tenho repositório público como manjeet86 / docker-repo, então os comandos seriam:
Basta ver, em
:
vez/
disso, era o truque. Funciona para mim. Eu não sei se ele permite que você marque/
também,:
mas isso pode ser para algum outro propósito.https://docs.docker.com/engine/reference/commandline/tag/#examples
fonte
:
vez de/
, obrigado.A maneira como o docker lida com IDs de usuário e repositórios pode ser um pouco confuso. Digamos que você crie uma conta de usuário xyz no docker hub. A nova conta estabelece automaticamente um espaço para nome
xyz
. Então você cria um repositório chamado myrepo. O nome do repositório será realmentexyz/myrepo
.Para enviar uma imagem, você deve fazer:
Você pode adicionar ": latest" ou uma tag diferente, se necessário.
Se você receber a
requested access to the resource is denied
mensagem de erro:fonte
Não sei o que aconteceu com o docker hub, mas nenhuma das soluções postadas funcionou para mim. Aqui está a solução alternativa que acabou funcionando para mim em janeiro de 2018:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE verse_gapminder_gsl latest 023ab91c6291 3 minutes ago 1.975 GB verse_gapminder latest bb38976d03cf 13 minutes ago 1.955 GB rocker/verse latest 0168d115f220 3 days ago 1.954 GB
docker tag bb38976d03cf dockhubusername/verse_gapminder:mytag
docker login docker.io
docker push dockhubusername/verse_gapminder:mytag
fonte
O Docker também tem um limite no número de repositórios particulares que você pode ter. Se você estiver criando um repositório privado pressionando a partir de sua máquina local, ele criará o repositório, mas nada mais poderá ser enviado ou retirado dele, e você receberá o erro "acesso solicitado ao recurso negado".
fonte
Sistema operacional: Ubuntu16.04
Razão: excluí o arquivo de configuração do cliente ( ~ / .docker / config.json )
Solução:
reinicialização do docker de serviço .
docker login --username = yourdockerhubername [email protected]
fonte
docker login https://index.docker.io/v1/ -u=yourusername
Meu problema foi simplesmente usar caracteres inválidos (um / extra) no nome da minha imagem:
é um nome de imagem inválido. Tente myusername / algo-imagem. Espero que isso ajude alguém.
fonte
__
.Eu tive o mesmo problema hoje. A única coisa que funcionou para mim foi acessar explicitamente o "docker.io" :
Tentei vários outros nomes e o logon parecia funcionar, mas mais tarde resultaria no seguinte erro.
fonte
docker login
sem sucesso, mas o explícitodocker.io
no final fez o truque.Eu também estava com esse problema, testei as soluções aqui presentes, mas sem sucesso, estava logado corretamente, pelo menos de acordo com a saída de
docker login
mas ainda não consegui enviar a imagem. O que finalmente funcionou foi simplesmente fazer:docker logout
E,
docker login
novamente, era tão trivial. Não sei o que aconteceu, mas forçar o novo login funcionou.fonte
Se você enfrentar esse problema enquanto estiver usando o Registro de Contêiner do Azure, poderá resolvê-lo entrando no seu registro primeiro.
E marque sua imagem para corresponder ao nome do host do seu registro.
E então finalmente empurre.
fonte
Para aqueles que tentam enviar a imagem para o seu próprio Nexus Repository Manager, faça o seguinte:
1) Faça logon no Nexus Repository Manager (a porta 8443 está associada a um repositório de host do Docker específico)
2) Marque a imagem COM SEU NEXUS SERVER IP / DNS
3) Empurre a imagem
fonte
Faça login no aplicativo. Eu tenho tentado apenas do terminal sem sorte.
Esta é a versão 17.06.1
fonte
Solução de trabalho simples:
Vá aqui
https://hub.docker.com/
para criar um repositório PRIVADO com nome, por exemplo,johnsmith/private-repository
este é o queNAME/REPOSITORY
você usará para sua imagem ao criar a imagem.Primeiro,
docker login
Segundo, eu uso "
docker build -t johnsmith/private-repository:01 .
" para criar imagem e "docker images
" para confirmar a imagem criada, como nesta caixa amarela abaixo: (desculpe, não posso colar o formato da tabela, mas apenas a sequência de texto)docker push johnsmith/private-repository:01
Feito!
fonte
Minha resposta está relacionada a problemas semelhantes do Azure DevOps que tive com o seguinte pipeline comum (é mais específico, mas pode ajudar alguém a economizar tempo):
O erro que recebi no push
denied: requested access to the resource is denied
me enviou aqui.Cuidado com a variável
$(Build.Repository.Name)
incluída no nome da sua imagem. Por padrão, é o nome do repositório do github, mas para o seu envio funcionar, deve serdockerhub_account_username/your_dockerhub_repository_name
.Substitua
$(Build.Repository.Name)
pordockerhub_account_username/your_dockerhub_repository_name
no campo de nome da imagem para as etapas de compilação e envio.Isso é necessário pelo dockerhub api para saber para onde enviar a imagem.
fonte
Funcionou depois que eu mudei o " docker login https://hub.docker.com " para " docker login docker.io " e forneci o nome de usuário e a senha.
Em seguida, siga os comandos abaixo:
NOTA: "new-repo" conterá "Docker ID + Repo name"
Aqui eu criei o repo "ubuntu" no Docker Hub antes de executar o comando abaixo.
Exemplo:
fonte
Se ainda assim falhar
docker login
, verifique se o repositório para o qual você está tentando enviar foi criado.fonte
Eu também estou tendo esse problema. Acontece que estou usando o nível gratuito e tentando enviar mais de uma imagem no repositório privado. Tornar uma imagem privada e o resto público funcionou para mim.
fonte
No meu caso, eu estava enviando para uma organização em que estou em uma equipe que possui permissões de administrador para o repositório.
então meu comando push foi:
docker push org-name/image-name
Eu poderia enviar com sucesso para nome de usuário / nome da imagem, mas não para a organização. Eu tripliquei as permissões. Nada funcionou.
A solução foi excluir o repositório do docker hub e atualizar novamente usando:
docker push org-name/image-name
Pelo valor, acho que o repo foi originalmente enviado antes que a conta fosse convertida em uma organização.
fonte
Portanto, caso seja útil para qualquer pessoa ...
Eu tive esse mesmo problema e aqui está o que era o meu problema e o FIX.
Então, eu estava tentando enviar uma imagem para a galáxia de um laptop na rede, então fiz isso:
Isso me daria um erro que diria:
Estranhamente, a correção para esse problema era fazer um login como este:
Isso resultou em um login bem-sucedido.
Então tentei enviar a imagem do meu laptop para a 'galáxia'.
Eu já havia criado uma tag para minha imagem que se parecia com isso:
Então, eu tentei empurrá-lo fazendo isso:
Para o qual eu recebi a resposta:
Curiosamente, descobri que a correção para isso era primeiro marcar a imagem da seguinte maneira:
... e faça o push desta maneira:
Então, por algum motivo, tive que incluir a porta na tag como parte necessária do nome do repositório.
Espero que isso ajude os outros.
fonte
todas as respostas anteriores estavam corretas, quero apenas adicionar uma informação que vi que não foi mencionada;
Se o projeto for um projeto privado para enviar corretamente a imagem, será necessário configurar um token de acesso pessoal ou implantar o token com a chave read_registry ativada.
fonte: https://gitlab.com/help/user/project/container_registry#using-with-private-projects
espero que isso seja útil (também se a pergunta for publicada até o momento)
fonte
Essa resposta é tanto para o meu eu futuro quanto para qualquer outra pessoa. Encontrei esse problema exato ao fazer logon corretamente, mas estou tentando enviar para um repositório particular quando meu número de repositórios particulares é maior ou igual ao limite permitido pelo meu plano.
Não sei exatamente como consegui criar muitos repositórios particulares, mas se meu plano incluir 5 repositórios particulares e, de alguma forma, tiver 6, esse é o erro que receberei:
denied: requested access to the resource is denied
No meu caso, é possível que eu tenha acabado com muitos repositórios particulares porque tenho minha visibilidade padrão definida como privada:
É aqui que você determina quantos repositórios particulares você pode ter:
Depois que tornei público o repositório problemático, o problema ficou aparente:
fonte
Eu realmente espero que isso ajude alguém (que olha as respostas finais primeiro como eu):
Eu tentei continuamente digitar
Em vez de
Desde que eu também fiz minha tag assim:
... todo o inferno quebrou perder.
Sinceramente, espero que você não repita meu erro. Eu desperdicei uns 30 minutos nisso ...
fonte
Estou demorando para adicionar mais uma resposta, mas a resposta aceita e as respostas restantes mencionadas
docker login
estão faltando um caso extremo para resolver os problemas que outras pessoas estão comentando nos comentários.A ênfase na
port
necessidade de inserção é provavelmente a solução para aqueles que ainda estão pesquisando.docker login
oudocker login <private-repo-host>
pode se conectar sem problemas, mas quando chegar a hora de enviar imagens, você receberá o mesmo erro do OP.Ou seja, você pode conectar-se sem host ou porta de definição e ainda assim obter:
No meu caso, estou usando um docker-registry interno do GitLab auto-hospedado, que foi configurado para usar a porta
4567
. Pode ser aventureiro verificar em qual porta o registro deve ser acessado. Sem especificar, a portadocker login <our.gitlab.host>
entraria com êxito, mas forneceria o mesmo problema que o OP consultou:Se você estiver usando o docker.io/dockerhub, provavelmente não terá esse problema, mas se tiver uma solução de registro auto-hospedado / privado, a probabilidade aumentará, será necessário fazer login explicitamente usando o host e a porta do registro do docker .
fonte
Não permita que o nome da tag seja enganado.
Minha abordagem para resolver isso:
Resultado:
Resultado:
Enganar é Tag, certifique-se de entender isso.
fonte
a maneira mais fácil é usar a área de trabalho do docker (para Windows 10 ou superior e mac)
primeira inscrição no hub docker, fornecendo dockerID
depois clique no ícone da área de trabalho da janela de encaixe na sua máquina e -> Preferências -> faça login nela usando a janela de encaixe / identificação e a senha do hub da janela de encaixe.
fonte
renomeie sua imagem para nome de usuário / docker name da imagem tag your-current-image / current-image dockerhub-username / some-name: your-tag (exemplo: mais recente)
fonte
Tente sair do aplicativo "Docker for Windows" e saia do site https://hub.docker.com/ e depois execute "login do docker" e "push do docker". Isso ajudou para mim.
fonte