Docker 管理端口
在 Docker 中,容器本身可以在端口上运行应用程序,如果要通过端口号访问容器中的应用程序,需要将容器的端口号映射到Docker主机的端口号。
在我们的示例中,我们将从 Docker Hub 下载 Jenkins 容器,然后我们将 Jenkins 端口号映射到 Docker 主机上的端口号。
步骤1: 首先需要在Docker Hub上做一个简单的注册:
步骤2: 注册后,你将登录到 Docker Hub:
步骤3: 接下来我们浏览一下,找到Jenkins镜像:
步骤4:在同一个页面向下滚动,可以看到 docker pull 命令,用于将 Jenkins 映像下载到本地 Ubuntu 服务器:
步骤5: 现在进入 Ubuntu 服务器并运行命令:
sudo docker pull jenkins
步骤6: 要了解容器暴露了哪些端口,可以使用 Docker inspect 命令检查镜像。
现在让我们了解更多关于 docker inspect 命令。
docker inspect
此方法允许返回有关容器或镜像的低级信息。
语法
docker inspect Container/Image
选项
Container/Image: 要检查的容器或镜像
返回值
JSON 格式的镜像或容器信息。
例子
sudo docker inspect jenkins
docker inspect命令的输出是一个JSON串。如果我们观察该输出,可以看到有一个 "ExposedPorts "部分,并看到有两个端口,一个是8080的数据端口,另一个是50000的控制端口。
为了运行Jenkins并映射端口,需要添加 "p "选项执行docker run命令来指定端口映射,如下所示 :
sudo docker run -p 8080:8080 -p 50000:50000 jenkins
端口号映射的左侧是要映射到的 Docker 主机端口,右侧是 Docker 容器端口号。
当你打开浏览器并导航到端口 8080 上的 Docker 主机时,将看到 Jenkins 已启动并正在运行。