docker中端口映射

简介: 【10月更文挑战第7天】

在 Docker 中,端口映射是指将容器内的端口映射到宿主机的端口上,这样就可以通过访问宿主机的端口来达到访问容器内服务的目的。端口映射通常是在使用 docker run 命令启动容器时指定的。

端口映射的基本语法是:

-p 宿主机端口:容器内端口

例如,如果你有一个 Web 服务器在容器内运行,并监听在 8080 端口上,你可以使用以下命令将它映射到宿主机的 80 端口:

docker run -p 80:8080 my_image

这将会使得任何对宿主机 80 端口的请求都被转发到容器内的 8080 端口。

如果你希望直接使用容器的服务端口,并且不关心宿主机使用哪个端口(让 Docker 自动选择一个宿主机的空闲端口),可以这样做:

docker run -p 8080:8080 my_image

如果想要绑定到特定的 IP 地址而不是默认的所有接口(0.0.0.0),可以指定 IP 地址:

docker run -p 192.168.1.100:8080:8080 my_image

这会使得只有从 IP 地址为 192.168.1.100 的设备发送的请求才能到达容器内的 8080 端口。

在实际使用中,可能会遇到需要同时映射多个端口的情况,这时可以在 docker run 命令中多次使用 -p 参数:

docker run -p 80:8080 -p 443:443 my_image

这样就可以同时将容器内的 HTTP 和 HTTPS 请求分别映射到宿主机的 80 和 443 端口。

请注意,端口映射仅适用于桥接模式(默认模式)或宿主模式下的容器网络配置。如果你使用的是用户定义的网络或覆盖网络,则可能需要在创建网络时或使用 docker network connect 命令时指定端口映射规则。

目录
相关文章
|
6月前
|
NoSQL 关系型数据库 Redis
Docker的通俗理解和通过宿主机端口访问Redis容器的实例
本文目标:引导初学者入门Docker,理解镜像、容器和宿主机概念,学习常用Docker命令,特别是如何创建并从Redis容器通过宿主机端口访问。 关键点: - Docker核心:镜像(类)、容器(实例)、宿主机(运行环境)。 - `docker pull` 拉取镜像,如 `redis:3.0`。 - `docker run -d --name` 后台运行容器,如 `my-redis`。 - `-p` 参数做端口映射,如 `6379:6379`。 - `docker exec -it` 交互式进入容器,如 `bash` 或执行命令。
275 4
|
13天前
|
数据建模 应用服务中间件 nginx
docker替换宿主与容器的映射端口和文件路径
通过正确配置 Docker 的端口和文件路径映射,可以有效地管理容器化应用程序,确保其高效运行和数据持久性。在生产环境中,动态替换映射配置有助于灵活应对各种需求变化。以上方法和步骤提供了一种可靠且易于操作的方案,帮助您轻松管理 Docker 容器的端口和路径映射。
54 3
|
2月前
|
Docker 容器
一个docker容器暴露多个端口
一个docker容器暴露多个端口
34 3
|
5月前
|
人工智能 Serverless API
函数计算产品使用问题之如何在一个Docker容器内运行一个持续监听特定端口的应用程序
函数计算产品作为一种事件驱动的全托管计算服务,让用户能够专注于业务逻辑的编写,而无需关心底层服务器的管理与运维。你可以有效地利用函数计算产品来支撑各类应用场景,从简单的数据处理到复杂的业务逻辑,实现快速、高效、低成本的云上部署与运维。以下是一些关于使用函数计算产品的合集和要点,帮助你更好地理解和应用这一服务。
|
4月前
|
开发框架 .NET Linux
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
|
4月前
|
Docker 容器
【Azure 应用服务】App Server 部署后,Docker报错,找不到8080端口
【Azure 应用服务】App Server 部署后,Docker报错,找不到8080端口
|
4月前
|
Kubernetes 网络协议 Docker
在K8S中,ip-cer-pod与docker原生端口映射有何区别?
在K8S中,ip-cer-pod与docker原生端口映射有何区别?
|
4月前
|
Docker 容器
docker: 修改运行容器的端口
docker: 修改运行容器的端口
|
4月前
|
Kubernetes 应用服务中间件 Docker
在K8S中,Pod网络访问与Docker容器端口映射有何不同?
在K8S中,Pod网络访问与Docker容器端口映射有何不同?
|
4月前
|
网络协议 Docker 容器
Docker——如何修改运行中容器的映射端口
Docker——如何修改运行中容器的映射端口
221 0
下一篇
DataWorks