docker ps ports
时间: 2023-08-14 07:12:59 浏览: 176
您好!要查看正在运行的 Docker 容器以及它们的端口映射,可以使用以下命令:
```shell
docker ps --format "table {{.Names}}\t{{.Ports}}"
```
这将显示正在运行的容器的名称和端口映射信息。每行显示一个容器,其中包括容器的名称以及容器内部端口与主机上映射的端口。
希望这可以回答您的问题!如果您有任何其他问题,请随时提问。
相关问题
docker ps 对应ports ip 0.0.0.0 改成127.0.0.1 方法
要将Docker容器的端口映射从0.0.0.0更改为127.0.0.1,你可以按照以下方法进行操作:
1. 使用 `docker ps` 命令查看正在运行的容器列表,并找到你想要更改映射的容器的ID或名称。
2. 停止该容器,使用命令 `docker stop <容器ID或名称>`,例如 `docker stop my_container`。
3. 使用 `docker inspect <容器ID或名称>` 命令获取容器的详细信息。在输出中找到 `"NetworkSettings"` 部分,其中包含了容器的网络设置。
4. 在 `"Ports"` 部分找到你想要更改的端口映射,例如 `"8000/tcp": [{"HostIp": "0.0.0.0", "HostPort": "8000"}]`。
5. 将 `"HostIp"` 的值从 `"0.0.0.0"` 更改为 `"127.0.0.1"`,即 `{"HostIp": "127.0.0.1", "HostPort": "8000"}`。
6. 启动容器,使用命令 `docker start <容器ID或名称>`,例如 `docker start my_container`。
这样设置后,容器的端口将仅通过本地回环地址127.0.0.1进行映射,而不再对外部网络可见。请注意,在更改容器的端口映射之前,请确保了解并理解安全风险,并确保只有可信的本地用户可以访问该端口。
docker ps -a存在但docker ps不存在
### Docker PS 命令解析
`docker ps` 和 `docker ps -a` 都是有效的命令,区别在于它们展示的内容不同。
#### 默认行为差异
默认情况下执行 `docker ps` 只会显示当前处于 **运行中** 的容器列表[^2]。这意味着如果没有任何容器正在运行,则此命令可能不会返回任何结果,这可能会让人误以为命令不可用。
```bash
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
```
当加上 `-a` 参数后 (`docker ps -a`) ,则不仅限于查看正在运行中的实例,还会罗列所有曾经启动过的容器记录——无论这些容器现在是否还在活动状态,包括那些已经被停止下来的实例也一并呈现出来[^3]:
```bash
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ff36e59b68e9 nginx "/docker-entrypoint.…" 2 days ago Exited (0) 21 hours ago wu-nginx-1
3a3527f8b61f scnginx:1.0 "nginx -g 'daemon of…" About a day ago Up About an hour 0.0.0.0:7755-nginx-2
```
因此,并不是说 `docker ps` 不存在或无法工作;而是因为它的作用范围更窄一些,默认只关注活跃的进程而已。要全面掌握系统内的所有容器情况(不论其当前的状态),应当使用带有 `-a` 选项的形式来调用该指令。
阅读全文