在刚装好的centos7上面使用yum命令时报错
docker Could not resolve host:mirrorlist.centos.org; Unknown error.
CentOS cannot find a valid baseurl for repo base/7/x86_64
这是网络的问题,需要排查,才能找到问题的所在:
不能上网解决方法一
首先在网卡文件中,确保ONBOOT=yes ,如果设为静态的ip,则需要加上ipaddr、gateway、netmask设个属性
# vi /etc/sysconfig/network-scripts/ifcfg-ens[数字]
配置好重启网卡,命令
# service network restart
ping网关,看能否ping得通,如果ping不同则检查所填的信息是否有问题。ping的通本机的网络没有问题了。
不能上网解决方法二
(1)查看网卡名字,输入命令:# ip addr
(2)开始修改网络信息配置文件,打开配置文件,输入命令:
(3)点击键盘【i】键,修改如下内容信息,完成之后,点击键盘【Esc】键,输入【:wq!】,点击回车键,保存退出
注意:如果修改ONBOOT时显示文件只读,按i修改后,esc退出,输入:w !sudo tee %就可以了)
把ONBOOT=no,改为ONBOOT=yes
不能上网解决方法三(终极)
docker centos7 配置和宿主机同网段IP
1、安装brctl 命令
# yum -y install bridge-utils
2、编辑网卡配置文件
# vi ifcfg-eno16777736
TYPE=Ethernet
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=2b04503d-4c0d-4f0f-8790-7b6203739892
DEVICE=eno16777736
ONBOOT=yes
BRIDGE=br0
#vi ifcfg-br0
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
ONBOOT=yes
DELAY=0
STP=yes
IPADDR=192.168.1.144
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS=114.114.114.114
3、重启相关服务,以及关闭相关服务
# systemctl stop NetworkManager
# systemctl disable NetworkManager
# systemctl restart network
br0正常启动,能够正常访问该机器即可,再用下面命令查看有即可:
# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c29ebab05 yes eno16777736
4、修改docker配置文件,修改桥接的网卡以及IP分配范围
# vim /etc/sysconfig/docker
将:
OPTIONS='--selinux-enabled'
修改为:
OPTIONS='--selinux-enabled -b=br0 --fixed-cidr=192.168.1.192/26'
重新启动docker
# systemctl stop docker.service
# systemctl start docker.service
5、启动docker实例
# docker run -i -t centos /bin/bash
[root@623261a0eb55 etc]# ip addr show eth0
23: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 02:42:c0:a8:01:c6 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.193/24 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::42:c0ff:fea8:1c6/64 scope link
valid_lft forever preferred_lft forever