在 WSL 环境中构建:WSL2 (2.3.26.0) + Oracle Linux 8.7 官方镜像
基本概念说明
容器技术
利用 Linux 系统的 文件系统(UnionFS)、命名空间(namespace)、权限管理(cgroup),虚拟出一个独立于主系统的文件系统(文件、网络、权限与主机相互独立),由于 Linux 系统一切均基于文件,因此这样就可实现多个虚拟环境在同一主机上的运行
容器运行时
粗略的来说,容器运行时 = 控制容器的管理软件 + 提供外界管理的界面(命令行、API 等)
常见的容器运行时有:
- docker:容器的创始者,应用广泛,但运行时需要 root 权限,不够安全
- podman:redhat 改进的容器运行时,是 centos 预装的运行时,无需 root 权限更安全
- k8s:实际上是容器编排软件(容器编排 = 利用计算机自动化实现集群级大量容器的管理)
这里选用比较常见的 docker 运行时
安装 docker 流程
参考资料(清华 docker-ce 源):https://mirror.tuna.tsinghua.edu.cn/help/docker-ce/
清理冲突软件、旧版软件
容器运行时不能相互共存。即:如果要安装 docker,则需要卸载 podman 等其他运行时
同一运行时的不同版本不能互存。如:如果要安装新版 docker,则需要删除原来存在的旧版
卸载冲突软件(以 podman 为例)
-
查询是否安装了 podman 相关软件
sudo rpm -qa | grep podman
若指令执行有相关输出,则这些软件是 podman 相关的软件
-
卸载 podman(如果上面查询到安装了相关软件)
卸载原版docker
如果原来安装过 docker,需要将原版 docker 先卸载yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
安装docker
配置 docker 仓库
这里第 3 步是关键,将原来的官方地址替换为清华源地址,实现 docker 软件安装时的加速sudo yum install -y yum-utils
# 配置原版仓库地址
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 替换为清华源地址
sudo sed -i 's+https://download.docker.com+https://mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
安装 docker
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
配置 docker 服务
注意:docker 相关指令,都需要 root 权限。root 权限配置可参考我的文章《配置 WSL (类 centos 的 oracle linux 官方镜像)》
安装完成后,docker 服务默认未启动、且开机不自启,这里设置为开机启动、并直接启动
# 设置 docker 开机启动
sudo systemctl enable dockerd# 启动 docker 服务
sudo systemctl start docker
若之后想控制 docker 的启动/停止/重启,设置/取消开机自启,可执行以下指令
# 启动/停止/重启 docker
# 一般修改 docker 配置后,都需要重启 docker 服务使配置生效
sudo systemctl start/stop/restart docker# 设置/取消 docker 开机自启
sudo systemctl enable/disable docker
配置 docker 国内镜像仓库加速
通用配置如下
参考文章:https://blog.csdn.net/liuxin_hello/article/details/139654089
# 1. 打开 docker 配置文件
sudo vim /etc/docker/daemon.json# 在配置文件中添加以下内容
{ "registry-mirrors": [ "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn" // 可以继续添加其他镜像源地址....]
}
这里配置 daocloud.io 的加速
daocloud 镜像加速地址详情:https://github.com/DaoCloud/public-image-mirror
!!!感谢 dcaocloud 等国内公益镜像加速服务提供者!!!
# 1. 打开 docker 配置文件
sudo vim /etc/docker/daemon.json# 在配置文件中添加以下内容
{ "registry-mirrors": [ "https://docker.daocloud.io","https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn" ]
}# 2. 保存文件# 3. 重启docker 服务
sudo systemctl restart docker
注意: