从meteor容器执行主机shell脚本

时间:2017-05-22 19:18:15

标签: docker

我的主机上有shell脚本。我已经安装了具有meteord图像的docker容器。我已经运行了,但是我想在meteord docker image中执行这个shell脚本。这可能吗?

1 个答案:

答案 0 :(得分:0)

是。这是可能的,但您必须按如下方式复制容器中的脚本:

docker cp <script> <container-name/id>:<path>
docker exec <container-name/id> <path>/<script>

例如:

docker cp script.sh silly_nightingale:/root
docker exec silly_nightingale /root/script.sh

确保脚本具有可执行权限。此外,您可以在Dockerfile的构建时复制脚本,然后使用exec运行它。

<强>更新

您也可以尝试docker volume,如下所示:

docker run -d -v  /absolute/path/to/script/dir:/path/in/container <IMAGE>

现在运行脚本如下:

docker exec -it <Container-name>  bash /path/in/container/script.sh

之后,您将能够在主机上的/absolute/path/to/script/dir中看到生成的文件。此外,请确保在脚本和命令中使用绝对路径以避免重定向问题。我希望它有所帮助。