运行 一个新的 Docker 容器,无需进入 Python 解释器

Run a new Docker container without getting inside Python interpreter

我使用以下命令从 Python:3.8 图像创建了一个新容器:docker run -it --name first_container -v app_files:/appfiles python:3.8,每次我都必须 运行 该容器中的解释器。

host@host_name:~$ docker run -it --name first_container -v app_files:/app_files python:3.8
Python 3.8.11 (default, Jun 29 2021, 19:54:56)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

我只能用exit()ctrl + d离开Python解释器。如果我这样做,我必须回到 host@host_name,而不是 root@first_container 我想去的地方。

>>> exit()
host@host_name:~$ docker ps -a
CONTAINER ID   IMAGE        COMMAND     CREATED          STATUS                     PORTS     NAMES
baf1d785d2ac   python:3.8   "python3"   3 minutes ago    Exited (0) 8 seconds ago             first_container

我想要的是运行一个新的容器直接进入root@first_container到运行别的东西。然后我可以使用 the method from Regan 离开容器而不停止它。这可能吗,或者这有什么意义吗? (还是docker的新手)

要覆盖默认的 python 命令并 运行 改为 shell,请在图像名称后指定命令。像这样

docker run -it --name first_container -v app_files:/appfiles python:3.8 /bin/bash