【centos7安装docker】

背景:

学习docker,我是想做一个隔离环境,并且部署的话,希望实现自动化,不为安装软件而烦恼,保证每个人的环境一致。

2C4G内存 50G磁盘的虚拟机事先已经准备完毕。

1.查看下centos版本,docker要求高于3.10

[root@localhost /]# uname -r
3.10.0-327.el7.x86_64

2.添加docker yum源

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

3.安装docker

yum install -y docker-ce docker-ce-cli containerd.io

4.添加docker守护配置文件

vim /etc/docker/daemon.json

内容如下:

{
  "registry-mirrors": [
    "https://registry.docker-cn.com",
    "http://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn"
  ]
}

5.重新加载下守护进程配置文件

sudo systemctl daemon-reload

6.启用docker

systemctl enable docker

7.启动docker    ==》公司的网络可能是有特殊处理,这步失败后,直接跳到 “reboot后的做法”

systemctl start docker

8.查看docker状态

systemctl status docker

9.查看docker版本

[root@localhost ~]# docker --version
Docker version 25.0.0, build e758fe5

10.运行hello-world

docker run hello-world

可见,hello-world没有则会进行拉取,看着提示,是docker完成安装了

---------------遇到的错误和一些操作----------------------

》 升级下yum版本 // 这一步可跳过

yum update

》 不要用yum -y install docker !!! 这样子安装的是旧版本的 docker

》 卸载docker 方式1// 安装了错误版本的docker,就先卸载一下

卸载

yum erase docker 
                  docker-client 
                  docker-client-latest 
                  docker-common 
                  docker-latest 
                  docker-latest-logrotate 
                  docker-logrotate 
                  docker-selinux 
                  docker-engine-selinux 
                  docker-engine 
                  docker-ce

》卸载docker 方式2 // 安装了错误版本的docker,就先卸载一下

先卸载下

sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

查找docker相关的还有什么没卸载干净

yum list installed | grep docker

继续卸载

yum remove xx

》查看报错日志

journalctl -xe

》彻底关闭selinux

vim /etc/selinux/config

修改SELINUX内容为:

SELINUX=disabled

重载下配置 

systemctl daemon-reload

-----------------------------reboot后的做法-----------------------------

 》重置状态

systemctl reset-failed docker.service

》 (disconnected from bus)

 关闭下防火墙

systemctl stop firewalld

 》网络另外一个 networks have same bridge name

rm -rf /var/lib/docker/network

再次启动

systemctl start docker

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>