在 Docker 中,容器可以通过以下几种方式进行标识和管理:
a3b2c1d0e9f8
)。a3b2c1d0e9f8
),但可通过短前缀唯一匹配时使用更短的部分(如 a3b2
)。docker stop a3b2
)。--name
参数指定(如 docker run --name my_container nginx
)。festive_minsky
)。docker logs my_container
)。--alias
或 Docker Compose 的 aliases
字段)。ping my-alias
)。a3b2c1d0e9f8
)。--hostname
参数或 hostname
字段(Docker Compose)设置。hostname
命令查看)。--label
或 Dockerfile 的 LABEL
指令添加(如 --label env=prod
)。docker ps --filter "label=env=prod"
)。nginx:latest
)。docker ps --filter "ancestor=nginx"
)。docker inspect --format '{{.State.Pid}}' <container>
获取)。nsenter
命令)。标识类型 | 示例 | 特点 | 常用命令 |
---|---|---|---|
容器 ID | a3b2c1d0e9f8 |
唯一、不可变 | docker stop a3b2 |
容器名称 | my_container |
可读性强、可自定义 | docker logs my_container |
网络别名 | my-alias |
仅在自定义网络内有效 | ping my-alias |
主机名 | myhost |
容器内部可见 | hostname |
标签 | env=prod |
用于元数据分类 | docker ps --filter "label=env" |
镜像名称:标签 | nginx:latest |
标识容器来源 | docker run nginx:latest |
进程 ID (PID) | 1234 |
宿主机视角 | nsenter -t 1234 -u -i |
env=prod
)。通过灵活组合这些标识方式,可以高效管理 Docker 容器。