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

再次查看共享网络详情

相关推荐
程序员老赵8 小时前
Docker 部署 XXL-JOB:轻松搭建分布式任务调度平台
后端·docker·开源
迹_start8 小时前
Docker
docker
小马同学-9 小时前
04 容器存储知识点
运维·docker·云计算
en.en..10 小时前
网络分层设备详解:中继器、集线器、网桥、交换机、路由器
网络·智能路由器
MZZ骏马10 小时前
Docker构建镜像
docker
AnalogElectronic10 小时前
汽车保养记录记事本
网络
流星白龙11 小时前
【Docker】11.容器命令
docker
名字还没想好☜11 小时前
Kubernetes 用 kubectl port-forward 和 proxy 调试集群内服务:两者区别、断连自动重连与为什么别用在生产
运维·docker·kubernetes
艾莉丝努力练剑13 小时前
【AI大模型接入SDK】LLM会话管理模块设计
网络·c++·人工智能·学习·大模型
March.s20 小时前
Docker 容器技术完全指南:从生态到架构的深度解析
docker