web-dev-qa-db-ja.com

docker execでソースを実行する方法は?

コンテナーの内部に行くことなく、Ubuntuを実行しているDockerコンテナー内のファイルを調達したかったのです。

以前はよく__していた:

docker exec -it CONTAINER_ID bash
source FILE

今私はやりたかった:

docker exec -it CONTAINER_ID source FILE

エラーがポップアップして驚いた:

exec: "source": executable file not found in $PATH

確かに、sourcewhich sourceで見つけることができないため、標準のコマンドではないようです。 lsは適切に動作します。

とにかく、このsourceコマンドはどのようなもので、docker exec -itを介して実行する方法は?

4
k0pernikus

ソースは実行可能ファイルではありません( ソースは、引数として渡されたファイルのコンテンツを実行するbashシェル組み込みコマンド

次のようにソースを実行する必要があります。

docker run --rm -ti _image_name_ bash -c 'source FILE'
8
cristi