前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >centos7宿主机上建立Docker桥接物理网络过程

centos7宿主机上建立Docker桥接物理网络过程

作者头像
飞奔去旅行
发布2019-06-13 16:46:35
2.1K0
发布2019-06-13 16:46:35
举报
文章被收录于专栏:智慧协同

环境说明

代码语言:javascript
复制
宿主机网卡信息:
name: eth0
IP: 10.211.55.11
GATEWAY: 10.211.55.1
DNS:192: 10.211.55.1

新建桥接网卡

  1. 停止docker服务
代码语言:javascript
复制
# service docker stop
  1. 删除docker0网卡
代码语言:javascript
复制
# ip link set dev docker0 down
# brctl delbr docker0
  1. 新建桥接物理网络虚拟网卡br0
代码语言:javascript
复制
# brctl addbr br0
# ip link set dev br0 up
# ip addr add 10.211.55.100/24 dev br0 #为br0分配物理网络中的ip地址
  1. 启用新的网卡br0
代码语言:javascript
复制
# ip link set dev br0 up

查看网卡信息

代码语言:javascript
复制
# ip addr show br0
4: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 00:1c:42:b8:09:57 brd ff:ff:ff:ff:ff:ff
    inet 10.211.55.100/24 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fdb2:2c26:f4e4:0:21c:42ff:feb8:957/64 scope global mngtmpaddr dynamic
       valid_lft 2591495sec preferred_lft 604295sec
    inet6 fe80::d0fb:20ff:feb3:1c4/64 scope link
       valid_lft forever preferred_lft forever
  1. 设置docker服务启动参数
代码语言:javascript
复制
# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --selinux-enabled -b=br0 --registry-mirror=https://v2kdqv13.mirror.aliyuncs.com
  1. 启动docker服务
代码语言:javascript
复制
# systemctl daemon-reload
# service docker restart
# service docker start

不同主机间容器通信

不同容器之间的通信可以借助于 pipework 这个工具:

代码语言:javascript
复制
$ git clone https://github.com/jpetazzo/pipework.git
$ sudo cp -rp pipework/pipework /usr/local/bin/
  1. 安装相应依赖软件
代码语言:javascript
复制
$ sudo yum install iputils-arping bridge-utils -y
  1. 新建容器,如gitlab
代码语言:javascript
复制
$ sudo docker run --detach \
    --hostname gitlab-centos-linux \
    --name gitlab \
    --restart always \
    --volume /data/gitlab/config:/etc/gitlab:Z \
    --volume /data/gitlab/logs:/var/log/gitlab:Z \
    --volume /data/gitlab/data:/var/opt/gitlab:Z \
    gitlab/gitlab-ce:latest

注意此时新建的容器虽然运行起来了,但是是没有网络连接的,我们需要借助pipework工具为容器手动设置ip。

  1. 为容器设置ip
代码语言:javascript
复制
$ sudo pipework br0 gitlab 10.211.55.102/24@10.211.55.100

说明:

  • 10.211.55.102/24: 为gitlab容器指定的静态ip
  • 10.211.55.100: 网关地址,也就是宿主机br0网卡的地址
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.05.10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 新建桥接网卡
  • 不同主机间容器通信
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档