跳至主要內容

Docker安装-Linux

知识库容器技术DockerDocker大约 2 分钟

在线安装

脚本安装(推荐)

curl -sSL https://get.daocloud.io/docker | sh
systemctl start docker && systemctl enable docker && systemctl status docker

YUM 安装

# 1、安装所需环境
yum install -y yum-utils device-mapper-persistent-data lvm2
# 2、配置yum仓库
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 3、安装Docker
yum list docker-ce --showduplicates | sort -r
yum install docker-ce docker-ce-cli containerd.io
# 4、启动Docker
systemctl start docker && systemctl enable docker && systemctl status docker


## 2. 官方一键脚本安装
# 安装所需环境
yum install -y yum-utils device-mapper-persistent-data lvm2
# 官方一键脚本安装
curl -fsSL get.docker.com -o get-docker.sh
sh get-docker.sh --mirror Aliyun
# 添加内核参数
tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
# 刷新内核参数
sysctl -p
# 修改Docker仓库为国内镜像站
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s https://pclhthp0.mirror.aliyuncs.com
# 启动Docker
systemctl start docker && systemctl enable docker && systemctl status docker

APT 安装

# 安装 apt 依赖包
apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

# 添加 Docker 的官方 GPG 密钥
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

# 使用以下指令设置稳定版仓库
add-apt-repository \
   "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/ \
  $(lsb_release -cs) \
  stable"

# 安装最新版本的 Docker Engine-Community 和 containerd 
apt-get update
apt-get install docker-ce docker-ce-cli containerd.io

离线安装

## 下载地址:   https://download.docker.com/linux/static/stable/x86_64/
## RPM下载地址:https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-ce-20.10.22-3.el7.x86_64.rpm
# 或者在一台联网的机器上在线下载再拷贝到离线机器上安装docker
yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
# 获取rpm包以及相关依赖
mkdir -p /opt/dockerrpm/ && yum install docker-ce --downloadonly --downloaddir=/opt/dockerrpm/

# 将/opt/dockerrpm/复制到目标机器
rpm -ivhU *.rpm --nodeps --force
systemctl status docker && systemctl enable docker && systemctl status docker

镜像拉取慢的问题

Docker Hub 是 docker 默认的公用 Registry,不过缺点是国内下载会比较慢

cat /etc/docker/daemon.json
cat > /etc/docker/daemon.json <<EOF
{
    "registry-mirrors": [
      "http://hub-mirror.c.163.com",
      "https://docker.mirrors.ustc.edu.cn"
    ],
    "insecure-registries": []
    "max-concurrent-downloads": 3,
    "live-restore": true,
    "max-concurrent-uploads": 5,
    "debug": true,
    "log-opts": {
      "max-size": "10m",
      "max-file": "5"
    }
}
EOF
# 需要重启 docker 服务
systemctl daemon-reload && systemctl restart docker

docker 常见问题

  • WARNING: IPv4 forwarding is disabled. Networking will not work.
# 修改配置文件
# echo "net.ipv4.ip_forward=1" > /etc/sysctl.conf
echo "net.ipv4.ip_forward=1" > /usr/lib/sysctl.d/00-system.conf
# 重启网络和docker
systemctl restart network && systemctl restart docker
# 查看是否修改成功(备注:返回1,就是成功)
sysctl net.ipv4.ip_forward