如何使不同主机上的dockerdocker多主机容器互联相通信

中国领先的IT技术网站
51CTO旗下网站
别慌!Docker容器内不能联网的6种解决方案
本文介绍了六种是在Docker容器内能ping通公网IP的解决方案,如果连公网IP都ping不通,那主机可能也上不了网(尝试ping 8.8.8.8)
作者:yangzhenping来源:yangzhenping的博客| 10:21
注:下面的方法是在容器内能ping通公网IP的解决方案,如果连公网IP都ping不通,那主机可能也上不了网(尝试ping 8.8.8.8)
1.使用--net:host选项
sudo&docker&run&--net:host&--name&ubuntu_bash&-i&-t&ubuntu:latest&/bin/bash&
2.使用--dns选项
sudo&docker&run&--dns&8.8.8.8&--dns&8.8.4.4&--name&ubuntu_bash&-i&-t&ubuntu:latest&/bin/bash&
3.改dns server
vi&/etc/default/docker&去掉&docker_OPTS=&--dns&8.8.8.8&--dns&8.8.4.4&&前的#号&
4.不用dnsmasq
vi&/etc/NetworkManager/NetworkManager.conf&在dns=dnsmasq前加个#号注释掉&&sudo&restart&network-manager&sudo&restart&docker&
5.重建docker0网络
pkill&docker&iptables&-t&nat&-F&ifconfig&docker0&down&brctl&delbr&docker0&docker&-d&
6.直接在docker内修改/etc/hosts【编辑推荐】【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条热点头条聚焦热点
24H热文一周话题本月最赞
讲师:6501人学习过
讲师:871人学习过
讲师:6507人学习过
精选博文论坛热帖下载排行
Cisco 640-801
Cisco& Certified Network Associate (CCNA&)
Q&A with explanations
Version 93.0...
订阅51CTO邮刊你的浏览器禁用了JavaScript, 请开启后刷新浏览器获得更好的体验!
前提目标:
Docker容器中运行了一个WEB应用,它需要访问Oracle数据库进行数据读写。
情景如下:
1. Docker宿主主机的IP为192.168.1.100,提供docker0网桥网关为192.168.119.1;
2. Docker容器名称为php,它的IP为192.168.119.3,监听端口为80;
3. 位于远程数据中心的Oracle数据库主机,IP为192.168.200.10,监听端口为1521;
问题提出:
如何使得php容器可访问数据库192.168.200.10:1521?
192.168.1.100与192.168.200.10通了吗
run php容器的时候设置环境变量 -e
ORCALE_DB_HOST=192.168.200.10 -e ORCALE_DB_PORT=1521
要回复问题请先或
浏览: 6140
关注: 3 人

我要回帖

更多关于 docker修改容器主机名 的文章

 

随机推荐