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

相关文章

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

SpringBoot通过main方法启动web项目实践

《SpringBoot通过main方法启动web项目实践》SpringBoot通过SpringApplication.run()启动Web项目,自动推断应用类型,加载初始化器与监听器,配置Spring... 目录1. 启动入口:SpringApplication.run()2. SpringApplicat

Nginx中配置使用非默认80端口进行服务的完整指南

《Nginx中配置使用非默认80端口进行服务的完整指南》在实际生产环境中,我们经常需要将Nginx配置在其他端口上运行,本文将详细介绍如何在Nginx中配置使用非默认端口进行服务,希望对大家有所帮助... 目录一、为什么需要使用非默认端口二、配置Nginx使用非默认端口的基本方法2.1 修改listen指令

Linux实现查看某一端口是否开放

《Linux实现查看某一端口是否开放》文章介绍了三种检查端口6379是否开放的方法:通过lsof查看进程占用,用netstat区分TCP/UDP监听状态,以及用telnet测试远程连接可达性... 目录1、使用lsof 命令来查看端口是否开放2、使用netstat 命令来查看端口是否开放3、使用telnet

SysMain服务可以关吗? 解决SysMain服务导致的高CPU使用率问题

《SysMain服务可以关吗?解决SysMain服务导致的高CPU使用率问题》SysMain服务是超级预读取,该服务会记录您打开应用程序的模式,并预先将它们加载到内存中以节省时间,但它可能占用大量... 在使用电脑的过程中,CPU使用率居高不下是许多用户都遇到过的问题,其中名为SysMain的服务往往是罪魁