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

再次查看共享网络详情

相关推荐
星夜落月17 分钟前
Web-Check部署全攻略:打造个人网站监控与分析中心
运维·前端·网络
每次学一点20 分钟前
【ZeroTier自研之路】planet的组成
服务器·网络·数据库
hwj运维之路1 小时前
超详细ubuntu22.04部署k8s1.28高可用(二)【结合ingress实现业务高可用】
运维·云原生·容器·kubernetes
huohaiyu1 小时前
IP协议详解
服务器·网络·tcp/ip
lfPCB2 小时前
高多层HDI板,撑起5G基站高频PCB核心
网络·5g
骂我的人都死了2 小时前
DevOps架构部署
运维·ubuntu·docker·k8s·github·devops·python3.11
AL3172 小时前
模拟实现NetDevOps全生命周期自动化网络运维
运维·docker·centos·ensp·netmiko
Alaaaaaaan2 小时前
[DevOps]使用github-action工具部署docker容器(实现提交代码一键推送部署到服务器)
服务器·前端·docker·容器·github
70asunflower2 小时前
Docker exec 命令完全解析
linux·ubuntu·docker
LaoZhangGong1232 小时前
学习TCP/IP的第9步:客户端和服务端综合测试
网络·学习·tcp/ip