利用Docker共享网络实现容器间的互联互通

描述

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

本文以nacos连接mysql为例

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

创建一个共享网络

docker network create --driver bridge 
--subnt 192.168.0.0/24 
--gateway 192.168.0.1 mynet

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

启动mysql容器

docker run -d 
--restart=always  
-m 256m 
--name mysql  
--net mynet 
-p 3307:3306  
-e MYSQL_ROOT_PASSWORD=123456  
mysql

查看该网络中的容器情况

docker network inspect mynet

Docker

 

 

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

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

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

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

再次查看共享网络详情

Docker

审核编辑:黄飞

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分