执行bash然后在docker中运行命令

时间:2017-02-20 20:49:53

标签: bash shell docker

您可以使用

在docker容器中执行bash shell
sudo docker exec -it container bash

但我想要一个在容器中执行bash shell的命令,然后在bash提示符中执行更多命令。

这样的命令目前有效:

sudo docker exec -it container touch test.txt | bash

但是,我想在bash提示符下运行的命令只能在docker容器中使用,所以我收到错误:

No such file or directory

是否可以使用docker exec执行docker容器本地命令?

2 个答案:

答案 0 :(得分:2)

我想我应该更多地阅读docker docs了!

docker exec -it container mycommand

工作正常!出于某种原因,我认为我必须启动bash提示然后使用其他命令,我的错误。

感谢jrbeverly和user2105103,解释说“通过docker exec执行的每个命令都在容器内。”

如果有人好奇如何在容器中运行多个命令,我正在使用:

sudo docker exec -it container sh -c "com1 && com2 && com3"

答案 1 :(得分:1)

尝试这样的事情:

sudo docker exec -it container bash -c "touch test.txt ; <another command>"