docker已启动容器修改添加端口映射的两种方法

以下是详细的攻略:

1. docker已启动容器添加端口映射的方法

在已启动的容器中添加端口映射,我们可以使用以下命令:

docker container update --publish-add [ip:][hostPort:]containerPort containerName/ID

其中,--[publish-add | p]表示添加映射,而[hostPort:]containerPort表示要添加的端口映射,hostPort可以省略,如果省略,则默认选择随机端口。

下面,我们开一个示例:

首先启动一个nginx容器并映射容器端口80到本地端口18080上:

docker run -d -p 18080:80 --name nginx-test nginx

然后我们再添加一个HTTPS端口443的端口映射:

docker container update --publish-add 443:443 nginx-test

这时通过命令docker ps可以看到端口映射已经添加成功,此时已有两个端口映射:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                 NAMES
c6c80007ade3        nginx               "/docker-entrypoint.…"   6 seconds ago       Up 5 seconds        0.0.0.0:18080->80/tcp, 0.0.0.0:443->443/tcp   nginx-test

2. docker已启动容器修改端口映射的方法

在已启动的容器中修改端口映射,我们也可以使用以下命令:

docker container update --publish-rm [ip:][hostPort:]containerPort --publish-add [ip:][hostPort:]containerPort containerName/ID

其中,--[publish-rm | P]表示删除已有的映射,--[publish-add | p]表示添加映射,而[hostPort:]containerPort表示端口映射。

假设现在我们要把容器端口80的映射从本地端口18080改成18081,从而让nginx在本地监听80和443以外的端口:

docker container update --publish-rm 18080:80 --publish-add 18081:80 nginx-test

执行命令后,可以通过docker ps命令看到端口映射已经修改成功,此时容器与本地的端口映射变为:

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                         NAMES
c6c80007ade3        nginx               "/docker-entrypoint.…"   8 minutes ago       Up 8 minutes        0.0.0.0:18081->80/tcp, 0.0.0.0:443->443/tcp   nginx-test

这样就完成了容器端口映射的修改。

希望以上步骤能够帮到你。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:docker已启动容器修改添加端口映射的两种方法 - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • 手把手教你docker部署(使用docker-compose)教程

    手把手教你docker部署(使用docker-compose)教程 在本文中我们将介绍如何使用Docker和Docker Compose部署应用程序。我们将以两个样例进行说明,它们是:使用Nginx反向代理部署Node.js Web应用程序和使用Docker Compose部署WordPress博客。 安装Docker和Docker Compose 在进行D…

    Docker 2023年5月16日
    00
  • gralde插件->docker-compose的使用

    在java web项目中,本地开发经常会需要在本地使用docker启动数据库等之类的服务。gradle提供了一个插件,允许通过gradle task启动docker的容器。在这里我们介绍的一个gralde插件com.avast.gradle.docker-compose 简单使用 引入插件 plugins { id “com.avast.gradle.doc…

    Docker 2023年4月8日
    00
  • Docker制作镜像的两种方式(在线制作和离线制作)

    当我们使用Docker来管理应用程序时,我们需要制作镜像并将其上传到Docker仓库,以便在其他机器上部署该应用程序。Docker的镜像可以通过在线制作和离线制作两种方式来完成。下面将详细介绍这两种制作方式的过程,以及给出相应的示例说明。 在线制作镜像 在线制作镜像是指直接从Docker Hub上的公共镜像开始,修改配置并生成新的镜像。这种方式制作出来的镜像…

    Docker 2023年5月16日
    00
  • docker资源限制和compose部署详解

    那我来详细讲解“docker资源限制和compose部署详解”的完整攻略,包括两个示例: Docker资源限制 在实际应用中,使用Docker构建的应用中,会遇到若干资源限制的问题。例如: CPU的使用限制 内存的使用限制 磁盘的使用限制 网络的使用限制 如果不限制这些资源,可能会导致应用程序吞噬掉整台服务器的所有资源,从而降低了整体的应用性能。 所以,为了…

    Docker 2023年5月15日
    00
  • CentOS 7.9 安装 docker20.10.12的过程解析

    下面是 CentOS 7.9 安装 Docker 20.10.12 的详细步骤: 环境说明 本教程环境如下: 操作系统:CentOS Linux release 7.9.2009 Docker 版本:20.10.12 安装 Docker 卸载旧版本 如果你之前有安装过旧版本的 Docker,需要先卸载掉,执行以下命令: sudo yum remove doc…

    Docker 2023年5月16日
    00
  • Docker制作镜像的完整过程

    下面详细讲解Docker制作镜像的完整过程,包括两个示例。 制作Docker镜像的步骤 Docker镜像制作的过程可以简单分为以下几个步骤: 步骤一:编写Dockerfile文件 Dockerfile是一个文本文件,它包含了构建Docker镜像的各种指令。在Dockerfile文件中,可以定义镜像的源镜像、所需的软件包、系统配置、用户等信息。Dockerfi…

    Docker 2023年5月16日
    00
  • docker数据持久化

    转载/参考: https://www.jianshu.com/p/ef0f24fd0674   Docker的数据持久化主要有两种方式: bind mount docker managed volume Docker的数据持久化即数据不随着container的结束而结束,数据存在于host机器上——要么存在于host的某个指定目录中(使用bind mount…

    Docker 2023年4月13日
    00
  • ubuntu 18.04 docker安装

    docker安装后不能正常启动,报错如下 $ sudo docker image ls Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? systemctl status docker.service ● dock…

    Docker 2023年4月11日
    00
合作推广
合作推广
分享本页
返回顶部