Docker部署项目时的服务端口设置——给容器添加新端口映射

2024-09-04 11:28

本文主要是介绍Docker部署项目时的服务端口设置——给容器添加新端口映射,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Docker给容器添加新端口映射

  • 1 Docker安装Ubuntu22.04
  • 2 创建新容器
  • 3 给容器添加端口映射
    • 3.1 查看运行的容器
    • 3.2 查看容器挂载目录
    • 3.3 停止容器
    • 3.4 停止docker服务
    • 3.5 进入容器挂载目录
    • 3.6 修改config.v2.json文件
    • 3.7 修改hostconfig.json文件
    • 3.8 启动docker
    • 3.9 启动容器
  • 4 端口测试
    • 4.1 创建一个服务端
    • 4.2 创建一个客户端
  • 参考文章

Docker容器创建后,其网络配置通常是固定的,包括端口映射。文内主要解决对现有容器添加新端口映射的问题。

1 Docker安装Ubuntu22.04

首先确保计算机已安装Docker。

#拉取镜像
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/ubuntu:22.04

2 创建新容器

下载完成后,通过运行一下命令来启动一个新的Ubuntu 22.04容器。

docker run -it --name test swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/ubuntu:22.04
#启动容器
docker start test

3 给容器添加端口映射

3.1 查看运行的容器

docker ps 

在这里插入图片描述

3.2 查看容器挂载目录

#docker inspect [容器id]或[容器name]
docker inspect test

在这里插入图片描述

3.3 停止容器

docker stop test

3.4 停止docker服务

systemctl stop docker

在这里插入图片描述

3.5 进入容器挂载目录

在这里插入图片描述

3.6 修改config.v2.json文件

添加 "ExposedPorts":{"8090/tcp":{}}
在这里插入图片描述

3.7 修改hostconfig.json文件

添加"PortBindings":{"8090/tcp":[{"HostIp":"","HostPort":"8090"}]}
在这里插入图片描述

3.8 启动docker

systemctl start docker

3.9 启动容器

docker start test
docker ps

在这里插入图片描述

4 端口测试

4.1 创建一个服务端

#1 进入容器
docker exec -it test bash
#2 安装netcat
sudo apt-get update
sudo apt-get install netcat
#3 nc通信
#创建一个服务端nc服务端用来监听该服务端端口的连接状态
#-l:监听模式,-p:监听的端口
#nc -l -p [端口]
nc -l -p 8090

4.2 创建一个客户端

在另一台机器上安装netcat,创建一个客户端用来连接4.1容器中的服务端,就可以在命令行相互通信了。

#nc [要连接的服务端IP地址] [要连接的服务端端口]
nc 192.168.3.87 8090

客户端:
在这里插入图片描述
服务端:
在这里插入图片描述

参考文章

netcat的使用
Docker给容器添加新端口映射两种方法及常用命令

这篇关于Docker部署项目时的服务端口设置——给容器添加新端口映射的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1135890

相关文章

python设置环境变量路径实现过程

《python设置环境变量路径实现过程》本文介绍设置Python路径的多种方法:临时设置(Windows用`set`,Linux/macOS用`export`)、永久设置(系统属性或shell配置文件... 目录设置python路径的方法临时设置环境变量(适用于当前会话)永久设置环境变量(Windows系统

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

Go语言编译环境设置教程

《Go语言编译环境设置教程》Go语言支持高并发(goroutine)、自动垃圾回收,编译为跨平台二进制文件,云原生兼容且社区活跃,开发便捷,内置测试与vet工具辅助检测错误,依赖模块化管理,提升开发效... 目录Go语言优势下载 Go  配置编译环境配置 GOPROXYIDE 设置(VS Code)一些基本

小白也能轻松上手! 路由器设置优化指南

《小白也能轻松上手!路由器设置优化指南》在日常生活中,我们常常会遇到WiFi网速慢的问题,这主要受到三个方面的影响,首要原因是WiFi产品的配置优化不合理,其次是硬件性能的不足,以及宽带线路本身的质... 在数字化时代,网络已成为生活必需品,追剧、游戏、办公、学习都离不开稳定高速的网络。但很多人面对新路由器

在IntelliJ IDEA中高效运行与调试Spring Boot项目的实战步骤

《在IntelliJIDEA中高效运行与调试SpringBoot项目的实战步骤》本章详解SpringBoot项目导入IntelliJIDEA的流程,教授运行与调试技巧,包括断点设置与变量查看,奠定... 目录引言:为良驹配上好鞍一、为何选择IntelliJ IDEA?二、实战:导入并运行你的第一个项目步骤1

Spring Boot 与微服务入门实战详细总结

《SpringBoot与微服务入门实战详细总结》本文讲解SpringBoot框架的核心特性如快速构建、自动配置、零XML与微服务架构的定义、演进及优缺点,涵盖开发环境准备和HelloWorld实战... 目录一、Spring Boot 核心概述二、微服务架构详解1. 微服务的定义与演进2. 微服务的优缺点三

RabbitMQ消息总线方式刷新配置服务全过程

《RabbitMQ消息总线方式刷新配置服务全过程》SpringCloudBus通过消息总线与MQ实现微服务配置统一刷新,结合GitWebhooks自动触发更新,避免手动重启,提升效率与可靠性,适用于配... 目录前言介绍环境准备代码示例测试验证总结前言介绍在微服务架构中,为了更方便的向微服务实例广播消息,

MySQL 主从复制部署及验证(示例详解)

《MySQL主从复制部署及验证(示例详解)》本文介绍MySQL主从复制部署步骤及学校管理数据库创建脚本,包含表结构设计、示例数据插入和查询语句,用于验证主从同步功能,感兴趣的朋友一起看看吧... 目录mysql 主从复制部署指南部署步骤1.环境准备2. 主服务器配置3. 创建复制用户4. 获取主服务器状态5

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.