Machine: Pergunta: Permissão negada em curl e salvar para docker compose

Criado em 27 fev. 2015  ·  30Comentários  ·  Fonte: docker/machine

Nas instruções para instalar docker-compose, você pode fazer:

curl -L https://github.com/docker/compose/releases/download/1.1.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Mas você não pode instalá-lo porque:

zsh: permission denied: /usr/local/bin/docker-compose

Não quero fazer sudo, porque queria que fosse como minhas instalações anteriores e uso do docker

docker <command>

Sem sudo ...

Qual é a maneira correta de configurá-lo?

Comentários muito úteis

no fim da entrada sudo chown -R $(whoami) /usr/local/bin

Todos 30 comentários

Eu acredito que você quis dizer https://github.com/docker/compose. @aanand ?

Provavelmente seu diretório /usr/local/bin não pode ser escrito por você. chmod / chown it, ou baixe docker-compose algum lugar gravável e sudo cp it.

Você não precisará de sudo para executá-lo, apenas para instalá-lo.

Estou tendo esse problema também e sou meio que novato no Linux :) Alguém pode me ajudar?

@luisrudge para composição ou máquina?

Oh, desculpe! É para compor!

@luisrudge ok np :) Importa-se se eu fechar este?

Sim! Obrigado!

estou enfrentando o mesmo problema para a máquina docker, redirecione-me para a solução @ehazlett

@joeyhipolito @aanand gentilmente ajude

@ tarun6006 O problema / solução é provavelmente o mesmo:

Provavelmente seu diretório /usr/local/bin não pode ser escrito por você. chmod / chown it, ou baixe docker-machine algum lugar gravável e sudo cp it.

Você não precisará de sudo para executá-lo, apenas para instalá-lo.

no fim da entrada sudo chown -R $(whoami) /usr/local/bin

Oh, obrigado @zhangqinghe, isso resolveu o problema para mim

Achei essa abordagem mais fácil.

@zhangqinghe isso resolve o problema. obrigado.

Para mim sudo -i antes, resolveu o problema.

@zhangqinghe obrigado. isso resolve meu problema.

Por favor digite
sudo chmod -Rf 777 / usr / local / bin
isso funciona

Por favor não faça isso. Isso terá mudanças de permissão de longo alcance que provavelmente estão além do escopo do que você realmente gostaria de realizar.

sudo chown -R $ (whoami) / usr / local / bin

NÃO faça isso também (isso mudará o proprietário de cada arquivo recursivamente em /usr/local/bin para o usuário com o qual você está executando atualmente). É muito exagero. Não consigo enfatizar isso o suficiente.

É muito provável que fazer algo assim acabe explodindo na sua cara. Em /usr/local/bin no meu Mac, alguns arquivos são propriedade de nathanleclaire e alguns são propriedade de root . Os programas que os colocam e dependem deles provavelmente esperam que assim permaneça. O comando sugerido acima dizimará totalmente essas propriedades de arquivo cuidadosamente dispostas.

Em vez disso, se necessário, considere este tipo de operação. Salve o arquivo em um diretório de sua propriedade e, em seguida, cp / mv it.

$ curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` \
    >~/docker-compose
$ chmod +x ~/docker-compose
$ sudo mv ~/docker-compose /usr/local/bin/docker-compose

Muito mais seguro com consequências de menor alcance.

Da documentação do Docker

Nota: Se você receber um erro de “Permissão negada”, seu diretório / usr / local / bin provavelmente não é gravável e você precisará instalar o Compose como superusuário. Execute sudo -i, os dois comandos abaixo e saia

a sugestão de nathanleclaire funcionou para mim. Obrigado

O Google me traz aqui ....

Por favor, POR FAVOR ... use a solução @nathanleclaire

Que tal isso:
Se você gostaria de usar o Docker como um usuário não root, você deve agora considerar
adicionar seu usuário ao grupo "docker" com algo como:

sudo usermod -aG docker seu-usuário
isso é uma boa ideia?

certifique-se de que docker-compose seja executável (chmod + x / usr / local / bin / docker-compose)

Não há necessidade de mexer com as permissões em todos os arquivos dentro de /usr/local/bin
Não faça

sudo chown -R $ (whoami) / usr / local / bin

Faça isso ao invés

sudo -i
curl -L https://github.com/docker/compose/releases/download/1.18.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod 755 /usr/local/bin/docker-compose
exit

Por favor, use a solução de @nathanleclaire , ela funciona muito bem para mim.

certifique-se de que docker-compose seja executável (chmod + x / usr / local / bin / docker-compose)

isso funcionou no Ubuntu 18.04

Achei essa abordagem mais fácil.

isso funcionou para mim: D

Para mim sudo -i antes, resolveu o problema.

Esta (ou qualquer uma das outras mencionando sudo -i ) deve ser a resposta aceita e não apenas chown todo o / usr / local / bin

Para valer a pena: o erro permission denied: docker-compose me ocorreu após uma atualização do Docker. Um minuto antes, tudo ainda estava funcionando bem, então minhas permissões estavam todas em ordem.

Depois que iniciei o aplicativo Docker (agora atualizado) para desktop e o autorizei quando pedi minha senha de administrador, o erro desapareceu. Portanto, o Docker corrigiu as próprias permissões.

Este código sozinho pode resolver este problema
sudo chmod +x /usr/local/bin/docker-compose

Esta página foi útil?
0 / 5 - 0 avaliações