如何在运行Docker容器的同时/之后打开一个shell而不覆盖现有的CMD?

所以我的Dockerfile的最后一行是:

CMD Django-admin startproject testproject 

我是Docker的新手,刚刚了解到我只能在Dockerfile中使用CMD行,而在以下示例中运行/ bin / shell将覆盖CMD:

 docker run -it <containerid> /bin/bash 

我的问题是如何打开一个shell而不覆盖Django的pipe理员startproject CMD? 我已经看着docker附加,但这似乎并没有打开一个shell。 我觉得我在这里错过了一些明显的东西。 我只是想运行我的容器,并进入壳和捅周围,并确保我的Django项目实际上正在创build。

你可以简单地运行容器而不用在后台覆盖命令:

 docker run -d --name container_name <image_name> 

接下来,您可以附加到运行新的会话容器:

 docker exec -it container_name bash