代码之家  ›  专栏  ›  技术社区  ›  Franck Dernoncourt

如何查看哪个用户启动了Docker容器?

  •  4
  • Franck Dernoncourt  · 技术社区  · 7 年前

    我可以查看正在运行的容器的列表 docker ps equivalently docker container ls (添加在Docker 1.13中)。但是,它不显示启动每个Docker容器的用户。如何查看哪个用户启动了Docker容器?理想情况下,我希望拥有运行容器的列表,以及用于启动每个容器的用户。

    3 回复  |  直到 7 年前
        1
  •  5
  •   Anar Bayramov    7 年前

    你可以试试这个;

    docker inspect $(docker ps -q) --format '{{.Config.User}} {{.Name}}'
    

    编辑:添加到输出的容器名称

        2
  •  1
  •   scourer    7 年前

    如果你习惯了 ps 命令,运行 聚苯乙烯 在码头主人和 grep 对于流程的某些部分,您的流程正在运行。例如,如果您有一个正在运行的Tomcat容器,您可以运行以下命令来获取关于哪个用户启动了容器的详细信息。

    ps -u | grep tomcat 
    

    这是可能的,因为容器只是由Docker管理的进程。 但是,这只能在单个主机上工作。Docker提供了获取容器细节的备选方案,如其他答案中所述。

        3
  •  0
  •   Dylan B    6 年前
     ps -aux | less
    

    在列表(最后一列)中找到进程的名称(在容器中运行的名称),您将看到用户在第一列中运行它。