如何使用 docker exec 运行源代码?

k0p*_*kus 6 linux bash docker

我想在运行 Ubuntu 的 docker 容器中获取一个文件,而无需进入容器内部。

我曾经:

docker exec -it CONTAINER_ID bash
source FILE
Run Code Online (Sandbox Code Playgroud)

现在我想做:

docker exec -it CONTAINER_ID source FILE
Run Code Online (Sandbox Code Playgroud)

并惊讶于错误弹出:

exec: "source": executable file not found in $PATH
Run Code Online (Sandbox Code Playgroud)

确实,我意识到这source似乎不是您的标准命令,因为我无法通过which source. ls表现得很好。

source无论如何,这个命令是什么样的东西,以及如何通过它来执行它docker exec -it

cri*_*sti 8

Source 不是可执行文件(source 是一个 bash shell 内置命令,它执行作为参数传递的文件内容

你应该像这样运行源代码:

docker run --rm -ti _image_name_ bash -c 'source FILE'
Run Code Online (Sandbox Code Playgroud)