centos7.4安装docker
文档安装连接:https://docs.docker.com/engine/install/centos/
1、确定你是CentOS7及以上版本
2、如果当前系统中有已经安装的版本,则卸载老版本:
sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
3、安装gcc相关:
yum -y install gcc
yum -y install gcc-c++
4、安装需要的软件包:
sudo yum install -y yum-utils
5、设置stable镜像仓库:
#这个是docker官方的仓库,我们不推荐 sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
#因为我们是在国内,访问的速度非常的慢,很容易导致报错,以下两个就是很容易导致的报错:
1 [Errno 14] curl#35 - TCP connection reset by peer
2 [Errno 12] curl#35 - Timeout
所以我们推荐使用阿里云的镜像:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
使用阿里云镜像加速:
https://promotion.aliyun.com/ntms/act/kubernetes.html
注册一个属于自己的阿里云账户(可复用淘宝账号),获得加速器地址连接(登陆阿里云开发者平台、点击控制台、选择容器镜像服务、选择镜像工具、获取加速器地址),以下是我个人的:
1. 安装/升级Docker客户端
推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce
2. 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://dw536e7h.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
6、更新yum软件包索引
yum makecache fast
7、安装DOCKER CE
yum -y install docker-ce docker-ce-cli containerd.io
8、启动docker
systemctl start docker
systemctl daemon-reload
systemctl restart docker
9、测试:
docker version
docker run hello-world
10、卸载:
systemctl stop docker yum remove docker-ce docker-ce-cli containerd.io rm -rf /var/lib/docker rm -rf /var/lib/containerd
11、启动Docker后台容器(测试运行 hello-world)
docker run hello-world
12、为什么docker比虚拟机快:
(1)docker有着比虚拟机更少的抽象层
由于docker不需要Hypervisor(虚拟机)实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。
(2)docker利用的是宿主机的内核,而不需要加载操作系统OS内核
当新建一个容器时,docker不需要和虚拟机一样重新加载一个操作系统内核。进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程是分钟级别的。而docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个docker容器只需要几秒钟。