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