docker容器如何映射端口

时间: 2023-09-12 13:09:01 浏览: 43
要映射容器的端口,你可以在创建容器时使用 `-p` 或 `--publish` 参数来指定端口映射规则。 使用以下语法来指定端口映射规则: ``` docker run -p <host-port>:<container-port> <image-name> ``` 其中,`<host-port>` 是你希望将容器端口映射到的主机上的端口号,而 `<container-port>` 是容器中正在运行的进程监听的端口号。 举个例子,假设你有一个名为 `my-container` 的容器,其中的应用程序正在监听容器内部的 `8080` 端口。你可以使用以下命令将容器的 `8080` 端口映射到主机上的 `8888` 端口: ``` docker run -p 8888:8080 my-container ``` 这样,你就可以通过访问主机上的 `8888` 端口来访问容器中运行的应用程序了。
相关问题

docker 修改容器映射端口

要修改 Docker 容器映射端口,可以使用以下命令: ```bash docker stop <container_name> docker run -p <new_host_port>:<container_port> --name <container_name> <image_name> ``` 其中,`<new_host_port>` 是你想要映射到宿主机的新端口号,`<container_port>` 是容器内部的端口号,`<container_name>` 和 `<image_name>` 分别是容器和镜像的名称。 例如,如果你想将容器的端口号从 8080 修改为 8888,可以运行以下命令: ```bash docker stop my_container docker run -p 8888:8080 --name my_container my_image ``` 这将会停止名为 `my_container` 的容器,并重新以 `my_image` 镜像启动,将容器端口 8080 映射到宿主机端口 8888。

修改docker容器映射的端口

要修改Docker容器映射的端口,可以按照以下步骤操作: 1. 查看当前运行的容器:`docker ps`,记下要修改的容器的CONTAINER ID或NAMES。 2. 停止要修改的容器:`docker stop CONTAINER_ID`。 3. 修改容器的端口映射:`docker run -p [新主机端口]:[容器端口] [容器名称或ID]`。例如,将容器端口80映射到主机端口8080:`docker run -p 8080:80 [容器名称或ID]`。 4. 启动容器:`docker start CONTAINER_ID`。 注意:如果容器已经在运行中,需要先停止再修改端口映射。同时,修改端口映射后,需要重新启动容器使其生效。

相关推荐

要在运行中的Docker容器中增加端口映射,有几种方法可以选择。 方法一是删除原有容器,重新建立一个新的容器。这种方法比较简单,但需要重新配置容器并重新启动。首先,查看容器的信息,可以使用命令docker ps -a。然后,查看容器的端口映射情况,可以使用命令docker port 容器ID或者docker port 容器名称。接下来,找到要修改的容器的全ID,可以使用命令docker inspect 容器ID | grep Id。进入到/var/lib/docker/containers目录下,找到与全ID相同的目录,修改其中的hostconfig.json和config.v2.json文件。注意,如果该容器还在运行中,需要先停止容器,再停止Docker服务。修改hostconfig.json文件中的PortBindings字段,格式如:"{容器内部端口}/tcp":\[{"HostIp":"","HostPort":"映射的宿主机端口"}\]。同时,修改config.v2.json文件,在ExposedPorts字段中加上要暴露的端口,格式如:"{容器内部端口}/tcp":{}。最后,重新启动Docker服务和容器。 方法二是把正在运行的容器打包成Docker镜像,然后使用run命令重新添加端口映射。这种方法相对简单,但在某些情况下可能会有问题,例如容器占用了大量的存储空间。这种方法适用于容器较小且不需要保留历史数据的情况。 综上所述,要在运行中的Docker容器中增加端口映射,可以选择删除原有容器重新建立新容器的方法,或者将正在运行的容器打包成Docker镜像再重新运行的方法。具体选择哪种方法取决于你的需求和情况。 #### 引用[.reference_title] - *1* [[docker]给运行中的docker容器追加端口映射](https://blog.csdn.net/jameskaron/article/details/105540549)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [对已有的docker容器增加新的端口映射](https://blog.csdn.net/qq_42511420/article/details/124926620)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【Docker】给运行的容器添加端口映射](https://blog.csdn.net/cai454692590/article/details/90510875)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

最新推荐

Docker容器端口映射后突然无法连接的排查过程

主要给大家介绍了关于Docker容器端口映射后突然无法连接的排查过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧

定制linux内核(linux2.6.32)汇编.pdf

定制linux内核(linux2.6.32)汇编.pdf

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire

图像处理进阶:基于角点的特征匹配

# 1. 图像处理简介 ## 1.1 图像处理概述 图像处理是指利用计算机对图像进行获取、存储、传输、显示和图像信息的自动化获取和处理技术。图像处理的主要任务包括图像采集、图像预处理、图像增强、图像复原、图像压缩、图像分割、目标识别与提取等。 ## 1.2 图像处理的应用领域 图像处理广泛应用于医学影像诊断、遥感图像处理、安检领域、工业自动化、计算机视觉、数字图书馆、人脸识别、动作捕捉等多个领域。 ## 1.3 图像处理的基本原理 图像处理的基本原理包括数字图像的表示方式、基本的图像处理操作(如灰度变换、空间滤波、频域滤波)、图像分割、特征提取和特征匹配等。图像处理涉及到信号与系统、数字

Cannot resolve class android.support.constraint.ConstraintLayout

如果您在Android Studio中遇到`Cannot resolve class android.support.constraint.ConstraintLayout`的错误,请尝试以下解决方案: 1. 确认您的项目中是否添加了ConstraintLayout库依赖。如果没有,请在您的build.gradle文件中添加以下依赖: ```groovy dependencies { implementation 'com.android.support.constraint:constraint-layout:<version>' } ``` 其中`<version>`为您想要

Solaris常用命令_多路径配置.doc

Solaris常用命令_多路径配置.doc

"互动学习:行动中的多样性与论文攻读经历"

多样性她- 事实上SCI NCES你的时间表ECOLEDO C Tora SC和NCESPOUR l’Ingén学习互动,互动学习以行动为中心的强化学习学会互动,互动学习,以行动为中心的强化学习计算机科学博士论文于2021年9月28日在Villeneuve d'Asq公开支持马修·瑟林评审团主席法布里斯·勒菲弗尔阿维尼翁大学教授论文指导奥利维尔·皮耶昆谷歌研究教授:智囊团论文联合主任菲利普·普雷教授,大学。里尔/CRISTAL/因里亚报告员奥利维耶·西格德索邦大学报告员卢多维奇·德诺耶教授,Facebook /索邦大学审查员越南圣迈IMT Atlantic高级讲师邀请弗洛里安·斯特鲁布博士,Deepmind对于那些及时看到自己错误的人...3谢谢你首先,我要感谢我的两位博士生导师Olivier和Philippe。奥利维尔,"站在巨人的肩膀上"这句话对你来说完全有意义了。从科学上讲,你知道在这篇论文的(许多)错误中,你是我可以依

Apache HTTP Server动静资源分离下的Nginx对比分析

# 1. 引言 ## 1.1 背景介绍 在Web服务器领域,Apache HTTP Server(简称Apache)一直是广泛应用的开源软件之一,提供了稳定、可靠的服务。随着网络技术的不断发展,网站对于动态和静态资源的需求也越来越复杂。为了更好地提升网站的性能和效率,动静资源分离成为了一个重要的优化方向。而在动静资源分离方面,Nginx作为备受关注的替代品备受瞩目。 ## 1.2 目的和意义 本文旨在探讨Apache HTTP Server和Nginx在动静资源分离方面的特点及优势,通过对比它们在性能、效率和安全性方面的表现,帮助读者更好地了解如何在实际应用中选择合适的服务器软件。

Html css JS promise await 形式 实现红绿灯变化

好的,我了解你的问题。这里我将使用HTML、CSS和JavaScript语言来实现红绿灯的promise和await实现。 首先,我们需要定义一个HTML页面,包含一个div元素和三个button元素。这个div元素用来模拟红绿灯,三个button元素用来控制红绿灯的变化。 ```html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>红绿灯</title> <style> #light { width: 100px; height: 100px; border

LOGO语言辅导.ppt

LOGO语言辅导.ppt