centos7安装docker
因为本人是windows系统,想在linux下完docker,先装个虚拟机先
1、安装virtualbox虚拟机
去https://www.virtualbox.org/ 下载安装
2、使用vagrant安装centos7
使用镜像安装centos系统挺麻烦的,还是使用vagrant快捷
2-1、新建一个目录命名centos7-demo1,我的完全目录是:E:\VirtualBox\centos7-demo1
2-2、打开git bash(或者cmd),cd到centos7-demo1目录
2-3、 执行命令:vagrant init centos/7 该命令会在当前目录下创建一个Vagrantfile文件
2-4、执行命令:vagrant up 安装centos系统,安装成功后打开virtualbox会发现多了个虚拟机,如下图
2-5、执行命令:vagrant ssh登录(vagrant默认创建的账号/密码:vagrant/vagrant)
3、安装docker
3-1、修改centos镜像(不换镜像,由于网络原因,yum install一直报错,如果你没有网络问题,请忽略此步骤)
1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的CentOS-Base.repo到/etc/yum.repos.d
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、运行yum makecache生成缓存
我使用的是阿里云镜像,阿里云官方教程:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11h8WE8y
3-2、安装docker
1、卸载旧版本
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
2、安装依赖包
$ sudo yum install -y yum-utils \ device-mapper-persistent-data \ lvm2
3、添加 yum
软件源(由于网络原因,这里添加的是阿里云镜像)
sudo yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4、更新 yum
软件源缓存,并安装 docker-ce
$ sudo yum makecache fast $ sudo yum install docker-ce
5、启动docker ce
$ sudo systemctl enable docker $ sudo systemctl start docker
6、建立docker用户组
默认情况下,docker
命令会使用 Unix socket 与 Docker 引擎通讯。而只有 root
用户和 docker
组的用户才可以访问 Docker 引擎的 Unix socket。
出于安全考虑,一般 Linux 系统上不会直接使用 root
用户。因此,更好地做法是将需要使用 docker
的用户加入 docker
用户组。
建立 docker
组:(一般提示docker组已存在)
$ sudo groupadd docker
将当前用户加入 docker
组:
$ sudo usermod -aG docker $USER
退出当前终端并重新登录,然后执行docker相关命令就不需要加上sudo了
7、测试docker是否安装正确
执行命令:$ docker run hello-world,该命令会拉去hello-world镜像并允许,但由于网络原因可能失败(我的就失败了),需要配置镜像加速,见步骤8
8、配置镜像加速
国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。国内很多云服务商都提供了国内加速器服务,例如:
Azure 中国镜像 https://dockerhub.azk8s.cn
网易云加速器 https://hub-mirror.c.163.com
在 /etc/docker/daemon.json
中写入如下内容(如果文件不存在请新建该文件)
{ "registry-mirrors": [ "https://dockerhub.azk8s.cn", "https://hub-mirror.c.163.com" ] }
然后重启服务
$ sudo systemctl daemon-reload $ sudo systemctl restart docker