当前位置: 首页 > 知识库问答 >
问题:

从容器名称获取Docker容器id

轩辕海
2023-03-14

从容器名称中获取Docker容器id的命令是什么?

共有3个答案

羊舌胡非
2023-03-14

>

  • 获取正在运行的容器的容器Ids::

    $docker ps -qf "name=IMAGE_NAME"
    
        -f: Filter output based on conditions provided
        -q: Only display numeric container IDs
    

    获取所有容器的容器ID::

    $docker ps -aqf "name=IMAGE_NAME"
    
        -a: all containers
    

  • 孔山
    2023-03-14

    你可以试试这个:

    docker inspect --format="{{.Id}}" container_name
    

    这种方法与操作系统无关。

    景嘉实
    2023-03-14

    在Linux中:

    sudo docker ps -aqf "name=containername"
    

    或者在OS X、Windows中:

    docker ps -aqf "name=containername"
    

    其中容器名是容器名。

    为了避免误报,正如@llia Sidorenko所指出的,您可以使用如下正则表达式锚:

    docker ps -aqf "name=^containername$"
    

    说明:

    • -q表示安静。仅输出ID
    • -a适用于所有人。即使您的容器未运行,也能正常工作
    • 过滤器的-f
    • ^容器名称必须以该字符串开头
    • $容器名称必须以此字符串结尾
     类似资料:
    • 问题内容: 从容器名称获取docker容器ID的命令是什么? 问题答案: 在Linux中: 或在OS X,Windows中: 您的容器名称在哪里。 如@llia Sidorenko所述,为避免产生误报,您可以使用正则表达式锚点,如下所示: 说明: 为了安静。仅输出ID 对所有人。即使您的容器未运行也能正常工作 用于过滤器。 容器名称必须以该字符串 开头 容器名称必须 结束 这个字符串

    • 这个命令给出了运行容器ID的列表: 是否有获取容器名称列表的命令?

    • 问题内容: 我正在开发服务,并在那里使用docker compose来旋转诸如postgres,redis,elasticsearch之类的服务。我有一个基于RubyOnRails的Web应用程序,并从所有这些服务中进行读写操作。 这是我的 我可以在此网络中ping容器 到目前为止,一切都很好。现在我想在主机上的Rails应用程序上运行ruby,但是能够像目前这样使用url访问postgres实例

    • 如何使用PHP在容器本身中获取Docker容器ID? 我刚刚发现linux命令如下:

    • 如何从容器内部获取docker的容器名称? 我不能使用“inspect”,因为我必须使用容器内部的脚本从JSON url获取信息。

    • 如果我在Docker容器中运行java应用程序,并且我想从相同的java应用程序代码中获取正在运行的Docker容器(我的java应用程序正在其中运行)的名称,那么通过java代码获取容器名称的方法是什么? 请注意,我想在容器内运行的相同java应用程序中拥有java代码。