Moby: dockerexecが実行中のコンテナー内の/ etc / hostsファイルを更新できません

作成日 2015年08月16日  ·  3コメント  ·  ソース: moby/moby

dockerバージョンは1.7.0、ビルド0baf609

次のコマンドを使用して、実行中のコンテナの/ etc / hostsファイルを編集しようとしています。
docker exec <container-id> echo <ip> <server> >> /etc/hosts

そして、許可が拒否されたというエラーメッセージが表示されます。
bash: /etc/hosts: Permission denied

ただし、次のコマンドを実行すると、次のようになります。
docker exec -it <container-id> /bin/sh

そのコンテナにアタッチした後、/ etc / hostsファイルを手動で編集すると、正常に機能します。

私がここで何を見逃しているのか分かりますか?

最も参考になるコメント

お詫び、答えを見つけました
docker exec <> / bin / sh -c "echo <> <> >> / etc / hosts"

全てのコメント3件

Docker情報
コンテナ:2
画像:105
ストレージドライバー:aufs
ルートディレクトリ:/ var / lib / docker / aufs
バッキングファイルシステム:extfs
Dirs:118
サポートされているDirperm1:true
実行ドライバー:ネイティブ-0.2
ロギングドライバー:json-file
カーネルバージョン:3.18.0-kali3-amd64
オペレーティングシステム:Kali GNU / Linux 1.1.0(moto)
CPU:4
総メモリ:9.79 GiB
名前:カーリー
ID: URLU:WG5FRJAB:4WHXJFPW:N3UR :G644:K7EI: QPER:J66Z :3 XGY:FW6Q
警告:メモリ制限はサポートされていません
警告:スワップ制限はサポートされていません

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

Dockerバージョン
クライアントバージョン:1.7.0
クライアントAPIバージョン:1.19
Goバージョン(クライアント):go1.4.2
Gitコミット(クライアント):0baf609
OS / Arch(クライアント):linux / amd64
サーバーバージョン:1.7.0
サーバーAPIバージョン:1.19
Goバージョン(サーバー):go1.4.2
Gitコミット(サーバー):0baf609
OS / Arch(サーバー):linux / amd64

お詫び、答えを見つけました
docker exec <> / bin / sh -c "echo <> <> >> / etc / hosts"

うん。 説明をお探しの方は、 https: //github.com/docker/docker/issues/15604#issuecomment -131360708も参照して

このページは役に立ちましたか?
0 / 5 - 0 評価