docker 安装

安装

安装

官方安装指南:

  • CentOS:https://docs.docker.com/engine/install/centos/
  • Ubuntu:https://docs.docker.com/engine/install/ubuntu/
  • Mac:https://docs.docker.com/docker-for-mac/install/
  • windows:https://docs.docker.com/docker-for-windows/install/

CentOS 安装 Docker

系统要求

  • Docker CE 支持 64 位版本 CentOS 7
  • CentOS 7 内核版本不低于3.10

查看内核版本

[root@oracle11g ~]# uname -r
3.10.0-1127.18.2.el7.x86_64

卸载旧版本

旧版本的Docker称为docker或者docker-engine,使用以下命令卸载旧版本

# 查看 docker 是否安装
yum list installed | grep docker 
# 删除安装的 docker 内容
sudo yum remove docker docker-common docker-selinux docker-engine docker-ce-cli docker-ce

yum 安装

注意:如果安装的事 centos 7 minimal版本,执行安装提示 “没有可用软件包” 这个时候需要安装必要的软件依赖及更新增加docker-ce yum源

# 更新软件源
yum update

# 安装必要依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# 添加docker源
[root@oracle11g ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
已加载插件:fastestmirror
adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

# 更新yum缓存
yum makecache fast
# 查看所有仓库中所有docker版本
yum list docker-ce --showduplicates|sort -r

# 安装
sudo yum install -y docker-ce

# 安装(选择版本)
yum -y install docker-ce-19.03.0.ce

使用脚本安装

在测试或开发环境中,docker官方微了简化安装流程,提供便捷的安装脚本,centos系统上可以使用如下命令进行安装(docker ce edge)

curl -fsSL https://get.docker.com -o get-docker.sh #获取脚本
sudo sh get-docker.sh --mirror Aliyun #安装脚本

自制脚本

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH

USER='docker'
GROUP='docker'
Version="19.03.13-3.el7"
# 安装环境
echo "配置 yum 环境"
yum install -y yum-utils device-mapper-persistent-data lvm2 wget || echo -e '\033[1;31m安装失败,请检查网络和yum源配置!\033[0m'

# 配置安装源
echo "配置docker安装源"
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 更新yum缓存
yum makecache fast

# 安装docker
echo "安装docker"
yum -y install docker-ce-$Version docker-ce-cli-$Version || echo -e '\033[1;31m安装失败,请检查网络和yum源配置!\033[0m'

# 创建用户组
echo "创建用户组:docker"
egrep "^$GROUP" /etc/group >& /dev/null
if [ $? -ne 0 ] 
then
    groupadd $USER
fi

# 创建用户
echo "创建用户:docker"
egrep "^$USER:" /etc/passwd >& /dev/null
if [ $? -ne 0 ]
then
    useradd -g $GROUP -s /sbin/nologin $USER -M
fi

echo "配置docker国内镜像"
if [ ! -d "/etc/docker" ]
then
    mkdir -p /etc/docker
fi
tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors":[
        "https://ung2thfc.mirror.aliyuncs.com",
        "https://mirror.ccs.tencentyun.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://registry.docker-cn.com"
    ]
}
EOF

echo "注册服务"
systemctl daemon-reload
systemctl enable --now docker

docker version && echo -e "\033[1;32m $Version 安装成功!\033[0m" || echo -e "\033[1;32m $Version 安装成功!\033[0m"

启动Docker CE

 # 设置开机启动
[root@oracle11g ~]# systemctl enable docker
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.
# 启动|重启|停止|当前状态
sudo systemctl start|restart|stop|status docker

建立 docker 用户组

默认情况下,docker命令会使用Unix Socket与Docker引擎通讯。而只有root用户和docker组的用户才可以访问docker引擎的Unix Socket。一般Linux系统上不会直接使用root用户进行操作。因此,需要使用docker的用户加入docker用户组

sudo groupadd docker #建立docker组
sudo usermod -aG docker $USER #将当前用户追加入docker组
# 添加到docker组后需要切换下用户,才生效或者更新组
sudo su #切换到root用户
su username #切换回之前用户(username之前用户名称)

# 更新组
newgrp docker #更新用户

测试docker是否安装正确

docker run hello-world #启动一个基于hello-world镜像的容器

你可能感兴趣的:(docker 安装)