公司现在 40+ 项目,现在运行环境是 VM 虚拟系统,管理及维护开始不太方便,趁着这次机会,好好整理下 Docker 相关知识,第一天开始就不断的踩坑,大大小小的坑太让我这萌新抓梦珏了。
各种工具层出不穷,也许现在不是最好的方案,许多工具能解决我半天的工作,还是希望锻炼自己解决问题的能力,所以一步一步来,先自己苦逼的搭建,成长过程中,结合工具提升效率。
希望以这种方式记录下自己的知识梳理,也给自己坚持的动力!
虚拟机 CentOs
IP:192.168.155.70
网关:192.168.155.254
DNS:202.106.0.20
ip、ifconfig、bridge-utils 这几个工具安装不赘述。
ifcfg-xxx
新建
touch /etc/sysconfig/network-scripts/ifcfg-br0
vi /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.155.71
GATEWAY="192.168.155.254"
DNS1="202.106.0.20"
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
DEVICE=br0
ONBOOT=yes
TYPE:类型 bridge=网桥 Ethernet=网卡
BOOTPROTO:static 静态地址
DEVICE:名称
ONBOOT:yes=系统自启动
vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="a9d32c74-aabb-4c4e-bd7c-c88837d8447a"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.155.70"
PREFIX="24"
GATEWAY="192.168.155.254"
DNS1="202.106.0.20"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_PRIVACY="no"
BRIDGE=br0
在后面加上
BRIDGE=br0
设置网卡所连接到的网桥名称
坑 1:这里的 DNS,网关一定设置正确!!!
坑 2: 因为这里没设置 DNS,导致容器无法解析域名,只能解析 IP
DNS 设置在/etc/resolv.conf 设置
# Generated by NetworkManager
nameserver 202.106.0.20
至此:设置完成,重启网卡服务service network restart
即可,ip 变成网桥设置的 71
docker run -itd --net=none --name=cnetos1 centos /bin/bash
git clone https://github.com/jpetazzo/pipework
cp ./pipework/pipework /usr/local/bin/
没权限,加执行权限
pipework br0 cnetos1 192.168.155.72/24@192.168.155.254
完成!