OStack程序员社区-中国程序员成长平台

标题: docker - 为什么docker ps -a的name列总是不同 [打印本页]

作者: 菜鸟教程小白    时间: 2022-8-3 10:10
标题: docker - 为什么docker ps -a的name列总是不同

我只是和 docker 玩而已!!
Ran ps命令-a选项

docker run -a
C:\Users\sarkan1>docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
3d6db385321c        busybox:1.24        "sleep 1000"        26 seconds ago      Up 24 seconds                                   lucid_ramanujan
e6acd65398b2        hello-world         "/hello"            43 minutes ago      Exited (0) 43 minutes ago                       nifty_brattain
c5576137580d        hello-world         "/hello"            4 days ago          Exited (0) 4 days ago                           dreamy_aryabhata
2594fbf1fa82        hello-world         "/hello"            4 days ago          Exited (0) 4 days ago                           nostalgic_hopper
c0102bc64c45        hello-world         "/hello"            4 days ago          Exited (0) 4 days ago                           vibrant_khorana
c4af79ea96e9        hello-world         "/hello"            4 days ago          Exited (0) 4 days ago                           cranky_heyrovsky
问题 :
  • 为什么我在“名称”列中得到的值总是不同?我跑了我猜的那个容器!
  • 什么是命令列?您好(/hello)前的斜线是否有意义?


  • Best Answer-推荐答案


    除非您启动一个指定其名称(docker run --name)的容器,否则docker将为您生成一个容器。
    这比用其ID引用所述容器容易。

    然后,您可以使用其(生成的)名称来制作docker命令。

    在“How does Docker generate default container names?”中查看更多信息。
    (以及源代码:moby/moby pkg/namesgenerator/names-generator.go )

    命令列是容器执行的完整命令:一旦该命令停止,容器就会停止。
    该命令在docker镜像中指定,并且是以下各项的组合:

  • Dockerfile ENTRYPOINT
  • Dockerfile CMD

  • (请参阅“difference between cmd and entrypoint in dockefile”)

    关于docker - 为什么docker ps -a的name列总是不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48484070/






    欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4