容器中的 Bash 脚本

容器中的 Bash 脚本

如何从主机在 docker 容器中执行 bash 脚本,以便在执行脚本后不应该从容器中退出?

答案1

您可以尝试使用 bash 作为带有选项--rcfile文件的交互式非登录 shell。

男人:

当启动非登录 shell 的交互式 shell 时,Bash 会从 ~/.bashrc 读取并执行命令(如果该文件存在)。这可以通过使用 --norc 选项来禁止。 --rcfile 文件选项将强制 Bash 从文件而不是 ~/.bashrc 读取并执行命令。

所以使用

bash --rcfile <(echo '. ~/.bashrc; some_command')

正如本文中提到的邮政

答案2

看看使用 docker exec 和 -d 作为分离标志,即

docker exec -d <containerid> /path/to/script 

相关内容