Docker 中的端口
0.0.0.0:8080->80/tcp
,主机(即运行 Docker 的机器)监听8080端口,如果有请求转发到容器的 80 端口上去。
详细解释一下:
-
0.0.0.0:8080->80/tcp
:这是一个端口映射规则。
0.0.0.0:8080
部分表示主机(运行 Docker 的机器)上的 8080 端口。0.0.0.0
这个地址指的是主机的所有 IP 地址,意味着任何能够访问你主机 IP 地址的机器都可以通过这个端口访问容器。80/tcp
部分表示容器内部的 80 端口。通常,web 服务器会在这个端口上监听 HTTP 请求。->
符号是将主机的端口映射到容器端口的表示方法。/tcp
表示这是一个 TCP 协议的端口。TCP 是常用的网络通信协议之一,用于很多类型的网络通信。
所以,当你在浏览器中输入 http://localhost:8080
或者 http://[你的IP地址]:8080
,你实际上是在访问运行在该 Docker 容器中的服务,而该服务监听的是容器内的 80 端口。
docker run -d \
--name app_admin_center \
-p 19019:80 \
admin_center:latest
docker run: 这是Docker的主要命令之一,用于创建并启动一个新容器。
-d: 这是–detach的缩写,表示容器在后台运行(即“分离模式”),并打印容器ID。不带此选项时,Docker容器会在前台运行,容器的标准输出会连接到当前终端。
–name app_admin_center: 这个选项为新创建的容器指定了一个名称(在这个例子中是app_admin_center)。如果不指定名称,Docker会自动生成一个名称。
-p 19019:80: 这是端口映射的参数。格式为 -p <主机端口>:<容器端口>。这意味着主机上的19019端口被映射到容器的80端口。当你在主机上访问19019端口时,实际上是访问了容器内部的80端口。
admin_center:latest: 这指定了要运行的Docker镜像的名称和标签。在这个例子中,镜像名为admin_center,标签为latest。标签latest通常表示镜像的最新版本。
综上,这个命令会创建并在后台启动一个名为app_admin_center的容器,该容器使用admin_center:latest镜像,主机的19019端口被映射到容器的80端口。这通常用于运行Web应用程序或服务,其中80端口是Web服务器的标准端口。通过这种方式,您可以通过访问主机的19019端口来访问容器中运行的Web应用程序。