2021Docker容器技术全解-安装Docker(1)
原创
©著作权归作者所有:来自51CTO博客作者wx5d4124a358e8a的原创作品,请联系作者获取转载授权,否则将追究法律责任
docker共享宿主机操作系统,安装docker时建议关闭防火墙方式服务冲突,有些生产环境会直接把防火墙给卸掉。
1安装docker:
#安装依赖:
yum install -y yum-utils device-mapper-persistent-data lvm2
#添加yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#安装docker
yum install docker-ce docker-ce-cli containerd.io --allowerasing
#启动并设置开机启动
systemctl start docker
systemctl enable docker
#验证安装是否成功
2开启路由转发(目的是让docker和其它的容器可以互相通信)
#开启路由转发
[root@web01 ~]#vim /etc/sysctl.conf
[root@web01 ~]#tail -1 /etc/sysctl.conf
net.ipv4.ip_forward=1
#让命令生效:
[root@web01 ~]#sysctl -p
net.ipv4.ip_forward = 1
#重启docker
3修改docker启动文件,将通讯规则设置成允许
docker版本大于1.12时会设置FORWARD的默认规则为DROP,这个bug会造成容器间的通讯障碍,解决的办法就是直接在启动文件的[Service]标签里添加一句话:
ExecStartPost=/sbin/iptables -P FORWARD ACCEPT
[root@web01 ~]#vim /usr/lib/systemd/system/docker.service
[Service]
....
ExecStartPost=/sbin/iptables -P FORWARD ACCEPT
ExecReload=/bin/kill -s HUP $MAINPID
4重新加载docker配置文件:
[root@web01 ~]#systemctl daemon-reload
[root@web01 ~]#systemctl restart docker
5验证:
[root@web01 /lib/systemd/system]#ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:01:91:8c:f0 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
6卸载防火墙:
[root@web01 /lib/systemd/system]#yum remove firewalld-*