docker 共享网络的方式实现容器互联

docker 共享网络的方式实现容器互联

++本文以nacos连接mysql为例++

前提已经在mysql容器中初始化好nacos数据库,库名nacos

创建一个共享网络

shell 复制代码
docker network create --driver bridge \
--subnt 192.168.0.0/24 \
--gateway 192.168.0.1 mynet

此处可以不指定网络模式、ip和网关,可以使用(docker network inspect 网络名称)查看ip

启动mysql容器

shell 复制代码
docker run -d \
--restart=always \ 
-m 256m \
--name mysql \ 
--net mynet \
-p 3307:3306 \ 
-e MYSQL_ROOT_PASSWORD=123456 \ 
mysql

查看该网络中的容器情况

bash 复制代码
docker network inspect mynet

启动nacos容器,并连接mynet网络

我的nacos镜像是M芯片的,自行更换

把nacos的ip(环境变量MYSQL_SERVICE_HOST)换成mysql的容器名称或者在共享网络中的ip即可

bash 复制代码
docker run -d \
--net mynet \
-e MODE=standalone \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e JVM_XMN=256m \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_SERVICE_HOST=mysql  \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=123456 \
-e MYSQL_SERVICE_DB_NAME=nacos \
-e MYSQL_SERVICE_DB_PARAM='characterEncoding=utf8&connectTimeout=10000&socketTimeout=30000&autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true' \
--restart=always \
--privileged=true \
--name nacos \
nacos/nacos-server:v2.1.1-slim

再次查看共享网络详情

相关推荐
jimmyleeee6 小时前
Agent安全之一:Agent Goal Hijack(ASI01)----当智能体“正确地”执行了错误的目标
运维·网络·安全
fb_123457 小时前
K8s存储与配置核心实战
云原生·容器·kubernetes
骑着蜗牛撵大象3277 小时前
N1 小盒子撑起 AI 接口中转层:New-API 接管本地 Ollama,用 Token 分发模型能力
docker·llama·1024程序员节·api网关·飞牛nas·new-api
Sirens.7 小时前
网络通信基础:IP、端口、协议分层与数据封装
java·网络·网络协议·tcp/ip·java-ee·1024程序员节
码完就睡7 小时前
Linux——IP协议与路由选择
linux·网络·tcp/ip·1024程序员节
箓维7 小时前
UDP Socket的实现
网络·1024程序员节
艸肅7 小时前
Docker 国内镜像源配置
linux·ubuntu·docker·1024程序员节
Lzg_na7 小时前
STP / RSTP 协议学习:从环路保护到快速收敛
网络
java_logo8 小时前
Docker 部署 Bililive-go:轻松搭建多平台直播录制
docker·1024程序员节·直播录制·轩辕镜像·bililive-go·chigusa/bililive-go
不一样的故事1268 小时前
Skill封装(Agent Skill / 智能体技能封装)
网络