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

再次查看共享网络详情

相关推荐
仙柒4152 小时前
kubernetes 控制器 Dockerfile
运维·容器·kubernetes
TechWayfarer7 小时前
查询IP所在地的3种方案:从API到离线库,风控场景怎么选?
开发语言·网络·python·网络协议·tcp/ip
万里侯10 小时前
Kubernetes Operator模式:自动化运维的高级实践
微服务·容器·k8s
热金鼠10 小时前
Ubuntu 22.04 Docker 完整使用手册(1)
docker
ylscode10 小时前
微软Exchange Server曝高危零日漏洞:朝鲜黑客利用“Toast攻击“入侵企业邮件系统
网络·安全·web安全
heimeiyingwang10 小时前
【架构实战】可观测性体系:从监控到全链路追踪
网络·数据库·架构
热金鼠10 小时前
Ubuntu 22.04 Docker 完整使用手册(2)
docker
weixin_5118404711 小时前
2026年5月4日 OCS技术方案路线选择与优劣深度调研报告
网络·人工智能
绝知此事11 小时前
Netty实战:从零构建高性能TCP通信服务(含心跳检测)
java·网络·spring boot·网络协议·tcp/ip
小初生ZLD12 小时前
AI开发者的网络卡点:Anthropic连接超时实战避坑
网络