docker端口含义(docker容器端口映射、容器内部端口)(port/tcp、0.0.0.0:port1->port2/tcp、:::port1->port2/tcp)

2023-05-16

文章目录

    • 示例
    • 20230511

示例

在这里插入图片描述
在这里插入图片描述

root@sx-virtual-machine:/userdata/testOnebuttonDeploy/shsany_ai/kyai_x86_ubuntu/tools/seaweedfs# docker ps -a
CONTAINER ID   IMAGE                                    COMMAND                  CREATED         STATUS         PORTS                                                                                                                                                                NAMES
4dd35df8b491   kyai_seaweedfs_x86:v1.0.0_20230508       "/entrypoint.sh volu…"   6 minutes ago   Up 6 minutes   7333/tcp, 8333/tcp, 8888/tcp, 9333/tcp, 18080/tcp, 18888/tcp, 19333/tcp, 0.0.0.0:8081->8080/tcp, :::8081->8080/tcp                                                   kyai_seaweedfs_volume
2aa49ddf167b   kyai_seaweedfs_x86:v1.0.0_20230508       "/entrypoint.sh mast…"   2 hours ago     Up 2 hours     7333/tcp, 8080/tcp, 8333/tcp, 8888/tcp, 18080/tcp, 18888/tcp, 19333/tcp, 0.0.0.0:9333->9333/tcp, :::9333->9333/tcp                                                   kyai_seaweedfs_master

其中:

  • port/tcp 表示容器内部的端口号和协议类型;
  • 0.0.0.0:port1->port2/tcp 表示将主机的端口号映射到容器内部的端口号,其中0.0.0.0表示监听所有的网络接口;
  • :::port1->port2/tcp 表示将主机的端口号映射到容器内部的端口号,其中:::表示监听所有的IPv6网络接口。

注意: port/tcp 显示有两种方法,一种是在Dockerfile中使用EXPOSE指令指定,另一种是在运行容器时使用--expose参数指定。

例如,在Dockerfile中指定容器暴露80端口和443端口,可以使用以下指令:

EXPOSE 80 443

在运行容器时使用--expose参数指定容器暴露的端口,例如:

docker run --expose 80 --expose 443 image_name

这样,在使用docker ps命令查看容器信息时,对应的端口信息就会显示为port/tcp,例如:

CONTAINER ID   IMAGE     COMMAND                  CREATED          STATUS          PORTS                  NAMES
c3f279d17e0a   nginx     "nginx -g 'daemon of…"   7 seconds ago    Up 6 seconds    80/tcp, 443/tcp       romantic_morse

可以看到,容器内部暴露的80端口和443端口对应的端口信息分别为80/tcp443/tcp。(这个主要是一个显示功能,我们即使不EXPOSE,容器也能正常运作的,主要是方便给人看的)

20230511

注意:docker ps 显示的容器内暴露端口和映射端口是不重复的,如果把一个容器内暴露端口做成了端口映射形式,那么它将不会出现在坐标容器内暴露端口的列表中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker端口含义(docker容器端口映射、容器内部端口)(port/tcp、0.0.0.0:port1->port2/tcp、:::port1->port2/tcp) 的相关文章

随机推荐