我认为我做的事情有些过于复杂,因此可能是错误的。
因此,我想更改/ etc / hosts文件并执行此操作,我将Dockerfile中的入口点更改为类似
ENTRYPOINT ["/bin/sh", "-c", "echo \"10.0.0.1 some_pc\" >> /etc/hosts && exec \"$@\""]
CMD ["some_reasonable.sh"]
如果我将something_reasonable.sh
设置为执行有用的操作,它将运行,但是如果我想重新启动带有交互式外壳的Docker映像,它将退出。此外,如果我尝试执行带有参数的命令,它将其视为2条命令。
我认为我处理shell和脚本的方式有问题。也许像这样放置exec行与放置脚本(例如What does set -e and exec "$@" do for docker entrypoint scripts?)不同
那么我该怎么写这个ENTRYPOINT一线纸,以便
docker-run -it my_docker:latest bash
还给我互动课程吗?