私の記事を読んでいただきありがとうございます。ドッキングする方法は、ドッカーコンテナの組み込みのシェルをUbuntuのドッカーのイメージ/コンテナに組み込むことです
問題:
# docker ps
CONTAINER ID IMAGE COMMAND
35c8b832403a ubuntu1604:1 "sh -c /bin/sh"
# docker exec -i -t 35c8b832403a type type
rpc error: code = 2 desc = oci runtime error: exec failed: container_linux.go:262: starting container process caused "exec: \"type\": executable file not found in $PATH"
# Dockerfile
FROM ubuntu:16.04
ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
RUN apt-get update && apt-get -y upgrade
ENTRYPOINT ["sh", "-c"]
CMD ["/bin/bash"]
説明:私の目標は、 "タイプ" シェル組み込みが
ドッカ幹部以下のようにドッカexecを書くの方法で実行して取得することです
-i -t 35c8b832403aタイプタイプ(FAILED)
ませ
ドッカ幹部-i -t 35c8b832403aのsh -c "type型"(PASSED)
私の周りグーグルでてきたが、コンテナ(変更は/ etc/profileは、/ etc /環境の中でいくつかの修正を行います、bashrc)、失敗しました。
ドッキングウィンドウのドキュメント自体から、それはという状態があります。
COMMANDは、コンテナのデフォルトのディレクトリで実行されます。 の下にあるイメージには、DockerfileにWORKDIR 指示文で指定されたカスタムディレクトリがありますが、これが代わりに使用されます。
COMMANDは実行可能、連鎖または引用されたコマンドでなければなりません は機能しません。例:EXEC -ti my_containerをドッキングウィンドウ "& &をエコー Bをエコー" は動作しませんが、ドッキングウィンドウ幹部-ti my_containerのsh -cます "& & エコーbをエコー"。
しかし、それは可能です思え私はドッカーFEDORA右から出力を取得することができ(Dockerfile:Fedoraの:25)
# docker ps
CONTAINER ID IMAGE COMMAND
2a17b2338518 fedora25:1 "sh -c /bin/sh"
# docker exec -i -t 2a17b2338518 type type
type is a shell builtin
質問:
はですUbuntuドッカーでこれを有効にする方法はありますか?画像/コンテナの微調整? Vagrantfileの設定?助けてください。
その他:
ドッキングウィンドウの実行を使用して、私は可能なので、Dockerfileで「ENTRYPOINT」の右出力を取得します。ただしイメージはエクスポートの代わりに保存する必要があります。
あまりにも悪いです。ユースケースの問題は引数 'type type'で' docker exec'を使うことです – sangelion