原创 ubuntu下docker的lnmp(七) 最终总结网络调用和地址的问题

63 篇文章 0 订阅
11 篇文章 0 订阅

当使用默认网络通讯的时候,mariadb  php-fpm  和 nginx  这3个都是有容器地址的

地址是默认的桥接的网络

root@ccyy-virtual-machine:/a/mariadb/data# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
a2ef8b9e081c        bridge              bridge              local
4b1e6673a329        host                host                local
6976e332a3e4        my-br0              bridge              local
cd7a2f9eb5fd        none                null                local
 

如果不指定桥接网络和ip地址的情况下,都是加入到默认的桥接网络并自动获取网段内的ip地址动态获取,相当于dhcp

我们配置的   mariadb  php-fpm  和 nginx

调用的方式有必要重新整理一下

我们访问 nginx 8093 服务端口的时候  nginx 会访问 php-fpm 9000的端口    然后 php-fpm 访问mariadb 3306端口

嗯,整理好这个访问流程后,大概就知道他们是如何运作的了

这里mariadb  php-fpm  和 nginx  实际上就是要实现局域网调用能访问到,就可以通讯了

因为容器内的地址如果不指定重启机器后,容器会自动重新分配一个未使用的容器ip使用

这样我们在phpmyadmin 访问mysql的时候就会出现 mariadb  php-fpm  和 nginx  这三个无法通讯的情况

首先说一下

--link mariadb:dblink \

这个当时我也很困惑,因为到底link干嘛用的,怎么用

白话文个人总结:把mariadb容器 链接成 dblink  这个名字随意,  谁link了 --link mariadb:dblink \   谁就可以通过自己自定义的链接名称访问这个名称ip地址  dblink 这个就是link得到的名称  白话文解释就是  可以把 link 的别名 当做同一个网桥内的 ip地址使用

例如 php-fpm 使用了  --link mariadb:dblink \  那么通过phg-fpm 访问mariadb 的时候就可以 把link得到的别名当 固定ip使用

172.0.0.2:3306

dblink:3306

相当于上面的ip ,重启后ip会变动,但是我们链接的别名是不会变的,所以起到一个固定名称 访问到mariadb 的地址作用 相当于hosts 文件的 名称和ip地址的映射

然后在phpmyadmin 配置文件host 主机设置成mariadb的访问别名 就不存在重启找不到正确的mariadb 地址了

-------------------------------------------------------------------------------------------------------------------------------

以上就是link的作用

---------------------------------------------------------------------------------------------------------------------------------、

然后说一下

--net-alias mydbtest \

这个是什么,怎么用

上面link是 谁link  谁就可以通过link的别名访问到对方的 名称ip

link是单一的自己使用,别人想使用还要他自己link去,意思就是只能自己link自己用 名称ip

--net-alias 但是这个就好很多了个人感觉

这个 --net-alias mydbtest \

意思就是,我把自己的ip地址映射成 别名 mydbtest

只要在同一个网桥下面的网段内的都可以访问到我 通过 mydbtest

容器在同一个网桥网段内的都可以去 把  mydbtest  当做ip·的地址来访问

也就是说,例如 mariadb 使用了 --net-alias mydbtest \  链接成的名称 mydbtest  

谁都可以使用访问,这个非常好!

所以建议使用--net-alias mydbtest \ 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值