Moby: docker exec não é capaz de atualizar o arquivo / etc / hosts em um contêiner em execução

Criado em 16 ago. 2015  ·  3Comentários  ·  Fonte: moby/moby

a versão do docker é 1.7.0, build 0baf609

Estou tentando editar o arquivo / etc / hosts de um contêiner em execução usando o comando:
docker exec <container-id> echo <ip> <server> >> /etc/hosts

E recebo a mensagem de erro de permissão negada:
bash: /etc/hosts: Permission denied

No entanto, quando executo o seguinte comando:
docker exec -it <container-id> /bin/sh

e edite manualmente o arquivo / etc / hosts após anexá-lo a esse contêiner, ele funciona bem.

Alguma ideia do que estou perdendo aqui?

Comentários muito úteis

Desculpas, eu encontrei a resposta
docker exec <> / bin / sh -c "echo <> <> >> / etc / hosts"

Todos 3 comentários

informação do docker
Recipientes: 2
Imagens: 105
Driver de armazenamento: aufs
Dir raiz: / var / lib / docker / aufs
Sistema de arquivos de apoio: extfs
Dirs: 118
Compatível com Dirperm1: verdadeiro
Driver de execução: nativo-0.2
Driver de registro: arquivo json
Versão do kernel: 3.18.0-kali3-amd64
Sistema operacional: Kali GNU / Linux 1.1.0 (moto)
CPUs: 4
Memória total: 9,79 GiB
Nome: kali
ID: URLU: WG5F : RJAB: 4WHX : JFPW: N3UR : G644: K7EI: QPER: J66Z : 3 XGY: FW6Q
AVISO: Sem suporte para limite de memória
AVISO: Sem suporte para limite de troca

uname -a
Linux kali 3.18.0-kali3-amd64 # 1 SMP Debian 3.18.6-1 ~ kali2 (2015-03-02) x86_64 GNU / Linux

versão docker
Versão do cliente: 1.7.0
Versão da API do cliente: 1.19
Versão Go (cliente): go1.4.2
Git commit (cliente): 0baf609
OS / Arch (cliente): linux / amd64
Versão do servidor: 1.7.0
Versão API do servidor: 1.19
Versão Go (servidor): go1.4.2
Git commit (servidor): 0baf609
OS / Arch (servidor): linux / amd64

Desculpas, eu encontrei a resposta
docker exec <> / bin / sh -c "echo <> <> >> / etc / hosts"

Sim. Veja também https://github.com/docker/docker/issues/15604#issuecomment -131360708 para quem procura uma explicação: sorria:

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