Skip to content

随记

积丝成寸,积寸成尺;寸尺水已,遂成丈匹。

本教程使用的linux是Centos7,离线安装使用的是docker20.9.10

在线安装

1. 更新软件包

shell
yum update -y

1.1 卸载旧版本(如果安装过旧版本的话) (没安装则无视这一步)

shell
yum remove -y docker docker-common docker-selinux docker-engine

2. 安装需要的软件包

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

shell
yum install -y yum-utils device-mapper-persistent-data lvm2

3. 安装docker最新版

shell
# 设置yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装docker
yum install -y docker-ce

4. 设置docker加速器,启动服务

shell
# 创建docker配置目录
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://7jdhwfuo.mirror.aliyuncs.com"]
}
EOF
# 重新加载配置
sudo systemctl daemon-reload
# 重启docker服务
sudo systemctl start docker

DockerHub国内镜像源列表(2024年7月18日 亲测可用)

5. 查看版本

正确看到版本号则为安装成功

shell
docker info
docker version

参考文档

离线安装docker20.9.10

离线安装docker20.9.10

1. 下载docker20.9.10以及相关依赖

如果之前装过docker请卸载干净

shell
yum remove docker docker-common docker-selinux docker-engine
shell
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/Packages/docker-ce-20.10.9-3.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7/extras/x86_64/Packages/container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/Packages/containerd.io-1.4.9-3.1.el7.x86_64.rpm
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/Packages/docker-ce-cli-20.10.9-3.el7.x86_64.rpm
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/Packages/docker-ce-rootless-extras-20.10.9-3.el7.x86_64.rpm
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7.9/x86_64/stable/Packages/docker-scan-plugin-0.12.0-3.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm
wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/slirp4netns-0.4.3-4.el7_8.x86_64.rpm
wget https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/f/fuse3-libs-3.6.1-2.el7.x86_64.rpm

2. 安装docker以及依赖包

shell
rpm -ivh fuse3-libs-3.6.1-2.el7.x86_64.rpm slirp4netns-0.4.3-4.el7_8.x86_64.rpm \
fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm docker-scan-plugin-0.12.0-3.el7.x86_64.rpm \
container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm \
containerd.io-1.4.9-3.1.el7.x86_64.rpm docker-ce-cli-20.10.9-3.el7.x86_64.rpm \
docker-ce-rootless-extras-20.10.9-3.el7.x86_64.rpm docker-ce-20.10.9-3.el7.x86_64.rpm

3. 配置docker加速器

这里我用的是自己的阿里云镜像加速服务,也可以使用其他镜像加速服务,参考地址

直接复制以下命令到终端执行即可

shell
# 因为还没有启动docker,所以配置文件目录以及文件还没创建,手动创建下
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://7jdhwfuo.mirror.aliyuncs.com"]
}
EOF
# 加载docker配置
sudo systemctl daemon-reload
sudo systemctl start docker
# 设置开机启动
systemctl enable docker
  • 修改docker数据目录 在/etc/docker/daemon.json追加配置"data-root": "/data/docker"

4. 验证,查看版本

shell
docker version

离线安装:docker27.3.0

其他更高版本同理,只要阿里云仓库里有

1.下载安装包

阿里云仓库

shell
wget https://mirrors.aliyun.com/docker-ce/linux/static/stable/x86_64/docker-27.3.0.tgz?spm=a2c6h.25603864.0.0.43f915acwqhB3H&file=docker-27.3.0.tgz

2.上传到服务器并解压

shell
tar -zxvf docker-27.3.0.tgz -C /tmp
cp /tmp/docker/* /usr/bin/

3.配置docker服务

shell
# 写入服务文件
cat > /etc/systemd/system/docker.service << EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target

[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target
EOF
# 授权文件
chmod 644 /etc/systemd/system/docker.service

4.配置docker数据位置以及开机启动

/etc/docker/daemon.json参数

  • "data-root" 数据目录
shell
sudo mkdir -p /etc/docker /data/storage/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
 "registry-mirrors": ["https://docker.1ms.run"],
 "data-root":"/data/storage/docker"
}
EOF
# 重载配置
systemctl daemon-reload
# 启动docker
systemctl start docker
# 开机自启
systemctl enable docker

docker-compose 离线安装

1. 下载docker-compose

2. 添加docker-compose命令到全局

shell
# 移动到环境变量目录下
mv docker-compose-linux-x86_64 /usr/bin/docker-compose
# 添加可执行权限
chmod +x /usr/bin/docker-compose

3. 查询docker-compose版本

shell
docker-compose -v

参考文档

构建各种容器

docker-compose构建各种容器

Released under the MIT License.