本文将简单介绍openEuler 22.03 LTS-SP3 系统使用dnf命令安装 docker 26.1.3、docker-compose。因为openEuler 22.03默认安装的docker是18.09版本,新版的docker安装可以参考本手册。
安装docker之前先需要将dnf的源更换为国内镜像源,加速软件更新和docker安装。
更新dnf源为华为源
cd /etc/yum.repos.d/
cp openEuler.repo openEuler.repo.bak
vi openEuler.repo
# 将dnf源更换为华为源,把文件中的 repo.openeuler.org 全部替换为 repo.huaweicloud.com/openeuler ,其他的不变。
# vi编辑器中替换命令参考::%s#repo.openeuler.org#repo.huaweicloud.com/openeuler#g
# 更新本地DNF元数据缓存
sudo dnf makecache
更新dnf软件列表
sudo dnf update -y
安装软件包
sudo dnf install -y dnf-plugins-core
sudo dnf install lrzsz vim curl lsof unzip
sudo dnf install net-tools
sudo dnf install sysstat
配置系统时区
sudo timedatectl set-timezone Asia/Shanghai
关闭防火墙
# 查看防火墙状态
sudo systemctl status firewalld
# 关闭防火墙
sudo systemctl stop firewalld
# 关闭防火墙开机自启
sudo systemctl disable firewalld
安装docker
# 配置dnf的docker源
sudo dnf config-manager --add-repo=https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
# 将docker源改为华为源,加速docker安装
cd /etc/yum.repos.d/
cp docker-ce.repo docker-ce.repo.bak
sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# 注意:docker-ce.repo 中用 $releasever 变量代替当前系统的版本号,但此变量在 CentOS 中有效,在 openEuler 中无效,所以将该变量直接改为8。
sed -i 's+$releasever+8+' /etc/yum.repos.d/docker-ce.repo
# 更新本地DNF元数据缓存
dnf makecache
# 执行命令安装docker
sudo dnf install -y docker-ce docker-ce-cli containerd.io
# 创建docker工作目录
mkdir -p /data/docker
# 配置docker加速器和默认配置,亲测有效
sudo tee /etc/docker/daemon.json <<'EOF'
{
"bip": "192.168.0.1/24",
"registry-mirrors": [
"https://dockerpull.org",
"https://docker.1panel.dev",
"https://docker.1panel.live",
"https://docker.foreverlink.love",
"https://docker.fxxk.dedyn.io",
"https://docker.xn--6oq72ry9d5zx.cn",
"https://docker.zhai.cm",
"https://docker.5z5f.com",
"https://a.ussh.net",
"https://docker.cloudlayer.icu",
"https://hub.littlediary.cn",
"https://hub.crdz.gq",
"https://docker.unsee.tech",
"https://docker.kejilion.pro",
"https://registry.dockermirror.com",
"https://hub.rat.dev",
"https://dhub.kubesre.xyz",
"https://docker.nastool.de",
"https://docker.udayun.com",
"https://docker.rainbond.cc",
"https://hub.geekery.cn",
"https://docker.1panelproxy.com",
"https://atomhub.openatom.cn",
"https://docker.m.daocloud.io",
"https://docker.1ms.run",
"https://docker.linkedbus.com",
"https://dytt.online",
"https://func.ink",
"https://lispy.org",
"https://docker.xiaogenban1993.com"
],
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3",
"labels": "production_status",
"env": "os,customer"
},
"data-root": "/data/docker",
"storage-driver": "overlay2",
"default-address-pools": [
{"base": "192.168.0.0/16","size":24}
]
}
EOF
# 设置docker自动重启
sudo systemctl enable docker
sudo systemctl daemon-reload
sudo systemctl restart docker
# 安装dockercompose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
# 也可以使用如下命令安装docker-compose,但是安装的版本为2.0+
dnf install -y docker-compose-plugin
# 查看docker和docker-compose版本
docker -v
docker-compose -v