当前位置: 首页 > news >正文

(四)docker:为mysql和java jar运行环境创建同一网络,容器互联

  1. 看了很多资料,说做互联的一个原因是容器内ip不固定,关掉重启后如果有别的容器启动,之前的ip会被占用,所以做互联创建一个网络,让几个容器处于同一个网络,就可以互联还不受关闭再启动ip会改变的影响,但是其实我拿我做的mysql测试,不管是代码里还是sql连接工具,使用容器内ip根本连接不到,只有使用我本机的ip连接才能连接上,所以实际容器内部ip变化对我的使用并没有影响,但是我特别在网上查了很多,他们好像用本地ip都连接不上,只能用容器内的ip,这个我就不直到为什么了,不过我只是为了学习如何创建网络,以及将新建的容器和既存的容器连接到一个网络即可,现在不懂的地方可以在以后有机会的时候就能知道为什么了,忽略次要的,重点先学会用。
  2. 先创建一个网络
   docker network create -d bridge sixdog
  1. 查看创建的网络
sixdog@sixiaodong dockerfile % docker network ls
NETWORK ID     NAME      DRIVER    SCOPE
5451e1cd08f8   bridge    bridge    local
d8b19cbdca68   host      host      local
f46cec15b991   none      null      local
1dadf784140f   sixdog    bridge    local
  1. 我现在有一个既存的容器mysql-dev,准备把它连接到sixdog网络里

4.1 查看mysql-dev容器

sixdog@sixiaodong dockerfile % docker ps -a
CONTAINER ID   IMAGE                       COMMAND                   CREATED         STATUS                      PORTS                               NAMES
465ae184cd56   mysql:latest                "docker-entrypoint.s…"   23 months ago   Up 24 hours                 33060/tcp, 0.0.0.0:3307->3306/tcp   mysql-dev

4.2 查看mysql-dev部分网络信息

sixdog@sixiaodong dockerfile % docker inspect mysql-dev
其他部分省略
"Gateway": "172.17.0.1","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","MacAddress": "02:42:ac:11:00:02","Networks": {"bridge": {"IPAMConfig": null,"Links": null,"Aliases": null,"NetworkID": "5451e1cd08f83eeba5495ecd8041332382c20068fa44e103b759442217f62867","EndpointID": "4388a57b5eed4fb767d918eb274a8b631d1e8fa8793909e6373a9e2c5466c580","Gateway": "172.17.0.1","IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:11:00:02","DriverOpts": null}}

4.3 尝试连接

sixdog@sixiaodong dockerfile % docker network connect sixdog mysql-dev

4.4 查看网络信息

sixdog@sixiaodong dockerfile % docker inspect mysql-dev  
其他部分省略
"Gateway": "172.17.0.1","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","MacAddress": "02:42:ac:11:00:02","Networks": {"bridge": {"IPAMConfig": null,"Links": null,"Aliases": null,"NetworkID": "5451e1cd08f83eeba5495ecd8041332382c20068fa44e103b759442217f62867","EndpointID": "4388a57b5eed4fb767d918eb274a8b631d1e8fa8793909e6373a9e2c5466c580","Gateway": "172.17.0.1","IPAddress": "172.17.0.2","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:11:00:02","DriverOpts": null},"sixdog": {"IPAMConfig": {},"Links": null,"Aliases": ["465ae184cd56"],"NetworkID": "1dadf784140fe418f4bd421b63ecd06ed46a1ebf41d386fba725e454349acb86","EndpointID": "1fc1d1d1dcaa6f37732690e82b684370638070a76c3d6a7ee08ebe94474711e8","Gateway": "172.18.0.1","IPAddress": "172.18.0.2","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:12:00:02","DriverOpts": {}}}

4.5 我用dbeaver使用172.18.0.2连接了下,连接不上mysql-dev,用我本机的ip可以

  1. 新建一个jar的运行环境,配置启动时的外部配置文件里的mysql连接ip改为172.18.0.2,并把这个新创建的容器加到sixdog网络里
    5.1 新建一个jar的运行环
#db访问配置
spring.datasource.url=jdbc:mysql://172.18.0.2:3307/test
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driverClassName =com.mysql.cj.jdbc.Driverserver.port=8082
sixdog@sixiaodong dockerfile % docker run --name appsixdog --network sixdog -p 8082:8082 -d app:v1
74c9a0faaaff167802fd6532278e8e10fe0a1d3cb993c275fe32e064e130fb2d

5.2 查看容器

sixdog@sixiaodong dockerfile % docker ps -a
CONTAINER ID   IMAGE                       COMMAND                   CREATED         STATUS                      PORTS                               NAMES
74c9a0faaaff   app:v1                      "java -Dspring.confi…"   9 seconds ago   Up 8 seconds                0.0.0.0:8082->8082/tcp              appsixdog

5.3 查看网络配置

sixdog@sixiaodong dockerfile % docker inspect appsixdog
部分省略
"Networks": {"sixdog": {"IPAMConfig": null,"Links": null,"Aliases": ["74c9a0faaaff"],"NetworkID": "1dadf784140fe418f4bd421b63ecd06ed46a1ebf41d386fba725e454349acb86","EndpointID": "9c64f3dc6bbe49a7ffbfd699b946e55b9ff8d006591d38c2e0fe4fe86602f565","Gateway": "172.18.0.1","IPAddress": "172.18.0.3","IPPrefixLen": 16,"IPv6Gateway": "","GlobalIPv6Address": "","GlobalIPv6PrefixLen": 0,"MacAddress": "02:42:ac:12:00:03","DriverOpts": null}}

5.4 访问页面
…很遗憾,可能是外部配置的文件没有生效所以8082的画面访问失败,我删掉了使用8081再来一遍
5.5.想起来了,需要把配置文件拷贝到容器内

sixdog@sixiaodong dockerfile % docker cp ./application.properties 00581903345c:/home/application.propertiesSuccessfully copied 2.56kB to 00581903345c:/home/application.properties

5.6 进容器内查看确认内容

docker exec -i -t appsixdog /bin/bash

5.7.重启容器

sixdog@sixiaodong dockerfile % docker restart appsixdog
appsixdog

5.8 再次确认画面,报错了,调查后发现其实在容器内品mysql的ip是可以的拼通的,最后意识到,在eclipse里配置的端口是创建容器时映射到外边的3307,而容器内是3306,修改后重启容器,画面可以打开,证明联网后容器可以互相访问,但是要注意端口等信息以容器内为准,而不是创建容器时外边的端口
在这里插入图片描述

相关文章:

(四)docker:为mysql和java jar运行环境创建同一网络,容器互联

看了很多资料,说做互联的一个原因是容器内ip不固定,关掉重启后如果有别的容器启动,之前的ip会被占用,所以做互联创建一个网络,让几个容器处于同一个网络,就可以互联还不受关闭再启动ip会改变的影响&#xf…...

【kafka】记一次kafka基于linux的原生命令的使用

环境是linux,4台机器,版本3.6,kafka安装在node 1 2 3 上,zookeeper安装在node2 3 4上。 安装好kafka,进入bin目录,可以看到有很多sh文件,是我们执行命令的基础。 启动kafka,下面的…...

C语言或C++结构体及其变量的创建方式汇总

第一种&#xff1a; struct 结构体类型名{ 任意类型 变量&#xff1b; }; 结构体类型名 *结构体变量new 结构体类型名; #include<bits/stdc.h> using namespace std; struct LNode {int data;struct LNode *next; }; /*void PutElem(LNode *t){while(t->next!NULL){…...

mysql之基础语句

数据库的列类型 int&#xff1a;整型 用于定义整数类型的数据 float&#xff1a;单精度浮点4字节32位 准确表示到小数点后六位 double&#xff1a;双精度浮点8字节64位 char&#xff1a;固定长度的字符类 用于定义字符类型数据&…...

Sentinel 哨兵数据 更新下载地址 2023年11月

1. 欧空局官方下载 2023年11月开始&#xff0c;原来欧空局的下载地址和应用有了变化&#xff0c;现在迁移到以下新地址下载&#xff1a; https://dataspace.copernicus.eu/ 我这边测试需要重新注册用户才能进行登录和使用&#xff0c;界面使用和之前差不多&#xff0c;具体操作…...

动态路由协议OSPF项目部署(二)

1. 静态和动态路由的区别&#xff1b; 2. OSPF协议通信过程与部署&#xff1b; 3. OSPF协议在项目上的应用场景 - OSPF - 开放式最短路径优先 - 一个动态路由协议 - 路由器转发数据 - 路由器需要一张地图 - 路由表 - 路由表如何构建的&#xff1f; - 依靠手动 或…...

winscp文件增量同步到linux服务器

一&#xff0c;点击同步 场景&#xff1a;在做服务器迁移的时候&#xff0c;文件好几十个G一天也迁移不完&#xff0c;每天还有增量的文件&#xff0c;先全量同步一次&#xff0c;然后再用增量同步&#xff0c;然后你用winscp的同步工具&#xff0c;进增量同步。 将本地文件同…...

足足68个!Python函数合集请收好!

内置函数就是python给你提供的, 拿来直接用的函数&#xff0c;比如print.&#xff0c;input等。 #68个内置函数 # abs()   dict()   help()   min()   setattr() # all()   dir()   hex()   next()   sli…...

vue2.0 打包,nginx部署

1、修改这里为空 否则报错&#xff1a;vue is undefined 2、修改为hash&#xff0c;重点&#xff1a;打包dist文件运行&#xff0c;必须这样 3、安装ngnix&#xff0c;重点&#xff1a;使用node的包&#xff1a;httpserve&#xff0c;失败 4、重点&#xff1a;配置代理转发 前端…...

微服务架构之路1,服务如何拆分?使用微服务的注意事项?

目录 一、前言二、单体服务的弊端三、微服务化四、服务如何拆分&#xff1f;五、使用微服务的注意事项1、服务如何定义2、服务如何发布和订阅3、服务如何监控4、服务如何治理5、故障如何定位 大家好&#xff0c;我是哪吒。 一、前言 微服务已经是Java开发的必备技能&#xff…...

解决Mac电脑音乐显示歌名的乱码问题

最近想听「万能青年旅店」的歌&#xff0c;结果在Mac电脑的「音乐」里面打开后是乱码。 【原因】(求助于chatGPT) 乱码问题可能是由于MP3文件的元数据&#xff08;比如歌曲名、艺术家、专辑等信息&#xff09;的编码问题导致的。如果这些信息是用非标准的或者不兼容的字符编码…...

赢在电商设计!2024年最新电商设计实战技巧盘点

双十一、双十二、黑五的电商大促即将轮番将至&#xff0c;电商运营人迎来大忙季&#xff0c;选品、直播、采购入库、售后……各种环节都是影响电商转化的关键因素&#xff0c;而电商设计作为打通这些环节&#xff0c;打造高转化率电商平台的关键要素&#xff0c;能够吸引用户注…...

约数之和 (普通快速幂求逆元做法)

假设现在有两个自然数 A 和 B&#xff0c;S 是 AB 的所有约数之和。 请你求出 Smod9901 的值是多少。 输入格式 在一行中输入用空格隔开的两个整数 A 和 B 。 输出格式 输出一个整数&#xff0c;代表 Smod9901 的值。 数据范围 0≤A,B≤5107 输入样例&#xff1a; …...

每日一题(LeetCode)----二分查找(三)

每日一题(LeetCode)----二分查找&#xff08;三&#xff09; 1.题目&#xff08;69. x 的平方根 &#xff09; 给你一个非负整数 x &#xff0c;计算并返回 x 的 算术平方根 。 由于返回类型是整数&#xff0c;结果只保留 整数部分 &#xff0c;小数部分将被 舍去 。 **注意…...

使用 TensorFlow FasterRCNN 网络进行目标检测

目录 描述 此示例的工作原理 处理输入图形 数据准备 sampleUffFasterRCNN 插件 验证输出 TensorRT API 层和操作 TensorRT API 层和操作 先决条件 运行示例 示例 --help 选项 附加资源 许可 变更记录 已知问题 本示例&#xff0c;sampleUffFasterRCNN&#xff0…...

数据结构——顺序表(SeqList)

目录 1. 顺序表介绍 2. 顺序表工程 2.1 顺序表定义 2.1.1 静态顺序表 2.1.2 动态顺序表 2.2顺序表接口 2.2.1 顺序表初始化 2.2.2 顺序表打印 2.2.3 顺序表销毁 2.2.4 顺序表数据插入 2.2.4.1 容量检查 2.2.4.2 顺序表尾插 2.2.4.3 顺序表头插 2.2.4.4 顺序表随机…...

Uni-App 快捷登录

uniapp 实现一键登录前置条件: 开通uniCloud, 开通一键登录功能参考的文档 : 官网 - 一键登录uniapp指南 : https://uniapp.dcloud.net.cn/univerify.html#%E6%A6%82%E8%BF%B0 官网 - 一键登录开通指南 : https://ask.dcloud.net.cn/article/37965 官网 - unicloud使用指南 htt…...

DbUtils + Druid 实现 JDBC 操作 --- 附BaseDao

文章目录 Apache-DBUtils实现CRUD操作1 Apache-DBUtils简介2 主要API的使用2.1 DbUtils2.2 QueryRunner类2.3 ResultSetHandler接口及实现类 3 JDBCUtil 工具类编写3.1 导包3.2 编写配置文件3.3 编写代码 4 BaseDao 编写 Apache-DBUtils实现CRUD操作 1 Apache-DBUtils简介 com…...

css:元素居中整理水平居中、垂直居中、水平垂直居中

目录 1、水平居中1.1、行内元素1.2、块级元素 2、垂直居中2.1、单行文字2.2、多行文字2.3、图片垂直居中 3、水平垂直居中参考文章 1、水平居中 1.1、行内元素 行内元素&#xff08;比如文字&#xff0c;span&#xff0c;图片等&#xff09;的水平居中&#xff0c;其父元素中…...

从零开始的目标检测和关键点检测(二):训练一个Glue的RTMDet模型

从零开始的目标检测和关键点检测&#xff08;二&#xff09;&#xff1a;训练一个Glue的RTMDet模型 一、config文件解读二、开始训练三、数据集分析四、ncnn部署 从零开始的目标检测和关键点检测&#xff08;一&#xff09;&#xff1a;用labelme标注数据集 从零开始的目标检测…...

10个企业级Windows自动化场景:pywinauto终极应用指南

10个企业级Windows自动化场景&#xff1a;pywinauto终极应用指南 【免费下载链接】pywinauto pywinauto/pywinauto: 一个 Python 库&#xff0c;用于自动化 Windows 应用程序。特点是提供了丰富的函数和类库&#xff0c;可以用于控制鼠标、键盘和菜单等元素&#xff0c;实现自动…...

OpenClaw故障排查手册:GLM-4.7-Flash接口连接常见问题解决

OpenClaw故障排查手册&#xff1a;GLM-4.7-Flash接口连接常见问题解决 1. 问题背景与排查准备 上周在本地部署OpenClaw对接GLM-4.7-Flash时&#xff0c;我遇到了三次连接中断和两次响应解析失败。这个开源框架虽然强大&#xff0c;但调试过程确实需要些技巧。本文将分享实战中…...

从仿真到真机:基于ROS2 Control和MoveIt2的Panda机械臂运动控制实战(Humble环境)

从仿真到真机&#xff1a;基于ROS2 Control和MoveIt2的Panda机械臂运动控制实战&#xff08;Humble环境&#xff09; 在工业自动化和科研领域&#xff0c;机械臂的运动控制正经历着从传统专用控制器向开源软件栈的转型。ROS2生态系统中的两大支柱——ROS2 Control和MoveIt2&…...

HARMONYOS应用实例242:不等式组解集图示

不等式组解集图示 功能:输入两个不等式,自动在数轴上绘制两个解集,并高亮显示其公共部分。这是一个基于 HarmonyOS ArkTS 开发的交互式不等式求解工具,用户可以输入两个不等式(如 x > 2 和 x < 5),系统会自动解析并在数轴上绘制两个解集,同时高亮显示它们的公共部…...

效率提升50%:OpenClaw+GLM-4.7-Flash的会议纪要自动化

效率提升50%&#xff1a;OpenClawGLM-4.7-Flash的会议纪要自动化 1. 为什么需要自动化会议纪要 作为技术团队负责人&#xff0c;我每周要参加至少8场会议。过去两年里&#xff0c;我尝试过各种会议纪要工具——从讯飞听见的语音转写&#xff0c;到Notion AI的摘要生成&#x…...

Qwen3-VL-4B Pro科研绘图生成:根据论文描述反向生成示意图初稿

Qwen3-VL-4B Pro科研绘图生成&#xff1a;根据论文描述反向生成示意图初稿 1. 项目概述 科研工作者经常面临一个痛点&#xff1a;在论文写作过程中&#xff0c;明明有清晰的理论描述和实验方案&#xff0c;却需要花费大量时间绘制专业的示意图。现在&#xff0c;借助Qwen3-VL…...

Windows性能优化:任务管理器深度使用指南

Windows性能优化&#xff1a;任务管理器深度使用指南Windows系统运行缓慢、卡顿&#xff1f;系统自带的任务管理器是诊断和解决性能瓶颈的强大工具。本文将带你深度挖掘Windows任务管理器的各项功能&#xff0c;重点介绍如何利用它进行进程管理、性能监控、启动项优化等操作&am…...

如何高效定制Steam界面:实用美化插件开发指南

如何高效定制Steam界面&#xff1a;实用美化插件开发指南 【免费下载链接】millennium-steam-patcher Apply themes/customize Steam after the 2023-04-27 Chromium UI update https://discord.gg/MXMWEQKgJF 项目地址: https://gitcode.com/gh_mirrors/mi/millennium-steam…...

简单几步,让AI帮你画瑜伽女孩:雯雯的后宫-造相Z-Image-瑜伽女孩模型使用教程

简单几步&#xff0c;让AI帮你画瑜伽女孩&#xff1a;雯雯的后宫-造相Z-Image-瑜伽女孩模型使用教程 1. 模型介绍&#xff1a;你的专属AI瑜伽画师 想象一下&#xff0c;你只需要用文字描述&#xff0c;就能让AI为你创作出专业级的瑜伽女孩图片。这就是"雯雯的后宫-造相Z…...

免费开源钥匙建模终极指南:快速生成3D打印钥匙模型

免费开源钥匙建模终极指南&#xff1a;快速生成3D打印钥匙模型 【免费下载链接】keygen OpenSCAD tools for generating physical keys 项目地址: https://gitcode.com/gh_mirrors/ke/keygen 在数字化制造时代&#xff0c;开源钥匙建模工具Keygen为技术爱好者和实践者提…...