docker下不同容器的网络互相访问问题

news2024/12/24 9:07:04

目录

背景

​编辑

docker网络模式

解决方法

mysql下 docker-compose下网络设置

nacos

效果


背景

我这边有两个容器,宿主机ip为 192.168.1.115,一个mysql,一个nacos,部署在主机上,使用的默认网络bridge,想从nacos里面来使用mysql的库,发现不能使用主机的ip,现状:

查看当前网络

docker network ls

是因为容器间网络不互通的问题,

docker网络模式

  • host模式:和宿主机共用一个Network
  • bridge模式:默认网络模式,实际是在iptables做了DNAT规则,实现端口转发功能
  • none模式:拥有自己的Network Namespace,但是,并不为Docker容器进行任何网络配置。也就是说,这个Docker容器没有网卡、IP、路由等信息。需要我们自己为Docker容器添加网卡、配置IP等。没有办法联网,封闭的网络能很好的保证容器的安全性。
  • container模式:和已经存在的一个容器共享一个 Network Namespace,而不是和宿主机共享

解决方法

思路为创建一个共用网络,

 创建网络

docker network create dev

删除网络

 docker network rm mysql_default

mysql下 docker-compose下网络设置

version: '3.1'
services:
  mysql:
    image: mysql:8.0.17
    restart: always
    container_name: mysql
    privileged: true
    ports:
      - 3306:3306
    environment:
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: 111333
    command:
      --max_connections=1000
      --character-set-server=utf8mb4
      --collation-server=utf8mb4_general_ci
      --explicit_defaults_for_timestamp=true
      --lower_case_table_names=1
      --max_allowed_packet=128M
    volumes:
      - /apps/mysql/config:/etc/mysql
      - /apps/mysql/logs:/var/log/mysql
      - /apps/mysql/data:/var/lib/mysql
      - /apps/mysql/mysql-files:/var/lib/mysql-files/
    networks:
      - dev
networks:
  dev:
    external: true

创建一个mysql容器,使用这个dev,启动

查看网络状态

docker inspect dev

 mysql,已经挂到了这个网络下

nacos

可以直接使用容器名称来代替ip:

db.url.0=jdbc:mysql://mysql:3306/nacos

version: '3'
services:
  nacos:
    restart: always
    image: nacos/nacos-server:v2.2.1
    # 容器名称
    container_name: nacos
    # 端口映射
    ports:
      - 8108:8848
      - 9848:9848
      - 9849:9849
    # 容器权限
    privileged: true
    # 参数设置
    environment:
      JVM_XMS: 128m
      JVM_XMX: 128m
      JVM_MS: 64m
      JVM_MMS: 64m
      MODE: standalone
      NACOS_REPLICAS: 1
      PREFER_HOST_MODE: ip
      SPRING_DATASOURCE_PLATFORM: mysql
      MYSQL_SERVICE_HOST: mysql
      MYSQL_SERVICE_DB_NAME: nacos
      MYSQL_SERVICE_PORT: 3306
      MYSQL_SERVICE_USER: root
      MYSQL_SERVICE_PASSWORD: 113355
    volumes:
      - /apps/nacos/logs:/home/nacos/logs
      - /apps/nacos/plugins:/home/nacos/plugins
      - /apps/nacos/data:/home/nacos/data
      - /apps/nacos/config/application.properties:/home/nacos/conf/application.properties
    networks:
      - dev
networks:
  dev:
    external: true
### If use MySQL as datasource:
spring.datasource.platform=mysql

### Count of DB:
db.num=1

### Connect URL of DB:
db.url.0=jdbc:mysql://mysql:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=113355

nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

#
#nacos.core.auth.enabled=true
#nacos.core.auth.enable.userAgentAuthWhite=false
#nacos.core.auth.server.identity.key=自定义的值
#nacos.core.auth.server.identity.value=自定义的值

效果

启动后效果:

两个容器都已经加入的这个网络,并且可以使用容器名字访问

检查网络状态

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/567128.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习SpringBoot入门知识,附带教程源码分享,快速掌握开发技巧-【imooc-java2021】体系课-Java工程师 2022版

学习SpringBoot入门知识,附带教程源码分享,快速掌握开发技巧 目录福利:文末有分享SpringBoot教程及源码哦 一、Spring Boot 是什么二、为什么要使用 Spring Boot三、快速入门3.1 创建 Spring Boot 项目3.1.1 通过 Spring Initializr 来创建1、…

微信小程序入门开发懂你找图小程序

文章目录 搭建 tabbar页面路径 首页模块tabs组件需求推荐组件精选大图月份热门分类模块需求 分类详情业务 首页模块专辑模块需求 专辑详情精美视频需求 视频详情需求 图片详情需求 搭建 tabbar 页面路径 页面名称路径首页index横屏horizontal精美视频video搜索search我的mine …

MySQL——存储引擎于索引应用

文章目录 一、 存储引擎1.1 MySQL结构1.2 存储引擎简介1.3 存储引擎特点1.3.1 InnoDB1.3.1.1 InnoDB 基本介绍1.3.1.2 InnoDB 逻辑存储结构 1.3.2 MyISAM1.3.3 Memory 1.4 三种引擎特点及区别1.5 存储引擎选择 二、 索引 - 重点2.1 介绍2.2 索引结构2.2.1 B-Tree 多路平衡二叉树…

【Linux:动态库与静态库】

1 动态库与静态库的概念 静态库(.a):程序在编译链接的时候把库的代码链接到可执行文件中。程序运行的时候将不再需要静态库。 动态库(.so):程序在运行的时候才去链接动态库的代码,多个程序共享使…

企业微信4.1.6 版本新功能介绍

一、效率工具与基础体验优化 文档 文档增加了丰富的模板,包含项目管理、日报周报、信息收集等多种场景,帮助了解更多文档功能,助力日常工作。 权限管理新增了「成员加入确认」开关,开启后需要管理员确认才能添加成员&#xff0…

相爱相杀的在线帮助文档语雀、Baklib、石墨文档,到底有何区别?

在线帮助文档是现代企业不可或缺的一部分,它提供了针对特定产品或服务的详细说明和指南,以帮助用户更好地理解产品或服务并解决问题。目前市面上有许多在线帮助文档工具,其中语雀、Baklib和石墨文档是比较受欢迎的三种,本文将对它…

卸载旧版本Keil,安装新版本的注意事项以及安装完成以后的一些问题

1. 资料 这里使用的是MDK536安装包和Keil.STM32F4xx_DFP.2.16.0安装包(因为板子是正点原子stm32F407的); 安装包放到下面(安装包也是在网上找的,里面还是比较全的,有C51,以及注册机等&#xf…

只做笔记有必要买apple pencil吗?好写的电容笔排行榜

随着科技的发展,出现了许多新的电子器件和数码器件。比如智能手机,比如ipad,比如电容笔等等。但实际上,想要让ipad发挥出最大的作用,就必须要有一支好的电笔。就像是我们在ipad上写字,总是要手写&#xff0…

硬件工程师-电路设计1-概念

学习电路设计及分析需要掌握的三大定律详解 1、遵循 源 回路 阻抗 分析回路上的节点,分析节点的内阻,电压,功率电流 2、分析电路上的波形:电路设计的过程就是波形整形的过程 波形整形:幅值的整形 波的…

CNNs:ZFNet之基于AlexNet特征可视化实验分析

CNNs:ZFNet之基于AlexNet特征可视化实验分析 导言基于AlexNet网络的实验分析实验一:不同卷积层特征提取分析实验二:不同卷积层提取特征收敛分析 ZFNet网络介绍基于ZFNet网络的实验分析实验三:针对AlexNet特征提取改善可视化实验四:特征不变性…

HW之轻量级内网资产探测漏洞扫描工具

简介 RGPScan是一款支持弱口令爆破的内网资产探测漏洞扫描工具,集成了Xray与Nuclei的Poc 工具定位 内网资产探测、通用漏洞扫描、弱口令爆破、端口转发、内网穿透、SOCK5 主机[IP&域名]存活检测,支持PING/ICMP模式 端口[IP&域名]服务扫描 网…

腾讯云图形验证码申请流程

目录 一、官方指引二、操作步骤1.步骤1:新建验证,获取验证码密钥2.步骤2:客户端接入验证码,展示验证页面3.步骤3:服务端接入验证码,调用票据校验 API 进行二次校验 一、官方指引 https://cloud.tencent.co…

为什么mac插入了u盘没反应 苹果mac插上usb后怎么找到

U盘使用简单,便于携带,几乎每个mac用户都有一个u盘。使用新的u盘的时候,你有没有遇到过mac插入了u盘没反应的情况呢?如果你是初次接触Mac电脑,使用u盘可能会手足无措,因为Mac系统和Windows存在差异&#xf…

苹果 App Store 出现山寨ChatGPT;Anthropic宣布获得4.5亿美元C轮融资

🚀 中国互联网协会提醒公众警惕“AI换脸”的新骗局 中国互联网协会提醒公众警惕“AI换脸”的新骗局,不法分子利用AI技术通过声音合成、伪造面部表情等实施诈骗。 公众应加强个人信息安全与防范措施,如加强个人信息保护、防止信息泄露、安装…

BLE连接通信

// BLE连接有关的技术分析 前言 本文的论述流程: 将传统的连接通信与广播进行对比,指出其不足说明BLE是如何制定规范解决这些问题写出完整的连接通信流程,并对能影响BLE连接通信的参数进行分析 1 连接通信的不足 保持连接是一个相当消耗…

代码随想录算法训练营15期 Day 2 | 977.有序数组的平方 、209.长度最小的子数组 、59.螺旋矩阵II 、总结

977.有序数组的平方 题目建议&#xff1a; 本题关键在于理解双指针思想 题目链接&#xff1a;力扣 思路一&#xff1a;暴力解算&#xff0c;直接将所有元素变成一个平方&#xff0c;然后进行排序。 class Solution { public:vector<int> sortedSquares(vector<int&g…

maven常用插件详解

官网讲解&#xff1a;https://maven.apache.org/plugins/ Maven 实际上是一个依赖插件执行的框架&#xff0c;它执行的每个任务实际上都由插件完成的。Maven 的核心发布包&#xff08;jar&#xff09;中并不包含任何 Maven 插件&#xff0c;它们以独立构件的形式存在&#xff…

数据翻译的代码辅助插件,一个注解搞定,减少30%SQL代码量

一、开源项目简介 Easy Trans是一款用于做数据翻译的代码辅助插件&#xff0c;利用MyBatis Plus/JPA/BeetlSQL 等ORM框架的能力自动查表&#xff0c;让开发者可以快速的把ID/字典码 翻译为前端需要展示的数据。 二、开源协议 使用Apache-2.0开源协议 三、界面展示 四、功能概…

CTF入门指南

何为CTF &#xff1f; CTF&#xff08;Capture The Flag&#xff09;夺旗比赛&#xff0c;在网络安全领域中指的是网络安全技术人员之间进行技术竞技的一种比赛形式。CTF起源于1996年DEFCON全球黑客大会&#xff0c;以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。…

文档关键信息提取形成知识图谱:基于NLP算法提取文本内容的关键信息生成信息图谱教程及码源(含pyltp安装使用教程)

文档关键信息提取形成知识图谱&#xff1a;基于NLP算法提取文本内容的关键信息生成信息图谱&#xff08;含pyltp安装使用教程&#xff09; 1. 项目介绍 目标&#xff1a;输入一篇文档&#xff0c;将文档进行关键信息提取&#xff0c;进行结构化&#xff0c;并最终组织成图谱组…