前言
基于前面的《系统架构设计》,不难发现,后续所有服务和中间件都会基于Docker部署,其重要性不言而喻,因此,本文将详细介绍如何在云服务器上搭建Docker环境。
1. 先决条件
- 云主机一台。当然,如果仅仅是Docker安装,本地虚拟机也可以,但如果考虑到独立开发,还是建议用云服务器,这样可以避免很多不必要的麻烦,毕竟首次购买的话,大部分云厂商都是几十块钱就可以玩一年;
- 系统必须是CentOS 7 或以上版本。我用的是腾讯云的OpenCloudOS 8.6系统,OpenCloudOS 8 的基础库和用户态组件完全与 CentOS 8 兼容,所以,如果你使用的系统是CentOS 8或者也完全兼容CentOS 8,那么就与我的环境基本是一致的了;
确保
centos-extras
仓库已启用。该仓库默认是启用的,新机可以忽略该步骤,但如果曾经禁用过,则需要重新启用。重启步骤如下:输入如下命令(你的文件可能为
CentOS-Base.repo
)$ vim /etc/yum.repos.d/OpenCloudOS.repo
- 找到
Extras
模块,将enabled
设置为1
,并保存
清除缓存,并建立新的元数据缓存
$ yum clean all $ yum makecache
检查是否启用成功
$ yum repolist all
2. 安装
2.1 卸载旧版本
如果之前安装过旧版的Docker,安装新版本之前需要卸载所有旧版本及其依赖项。保险起见,无论之前是否安装过,都可执行一次下面的卸载命令。
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
2.2 设置yum源
先安装yum-utils
,它提供了用于设置yum
源的yum-config-manager
程序。
$ sudo yum install -y yum-utils
如果执行报类似如下错误:
Errors during downloading metadata for repository 'appstream':
- Curl error (6): Couldn't resolve host name for http://mirrorlist.centos.org/?release=8-stream&arch=x86_64&repo=AppStream&infra=stock [Could not resolve host: mirrorlist.centos.org]
Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: Curl error (6): Couldn't resolve host name for http://mirrorlist.centos.org/?release=8-stream&arch=x86_64&repo=AppStream&infra=stock [Could not resolve host: mirrorlist.centos.org]
则先执行如下命令,然后重新执行:
cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
yum clean all
yum makecache
然后执行如下命令,设置阿里云提供的yum
源。由于网络原因,在国内通过官方源安装软件包速度会很慢,甚至会超时。而使用阿里云的yum
源就不会有这个问题。
$ sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
2.3 创建元数据缓存
设置yum
源后,需重新创建yum
软件包元数据缓存,这样软件安装时会更快一些。
$ yum makecache
注意:
CentOS 7可以使用yum makecache fast
,而CentOS 8中去掉了fast
参数。
2.4 安装Docker引擎
安装最新版的Docker Engine,containerd和Docker Compose。
$ sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
安装过程中需要确认,一路选y
即可。
2.5 启动Docker
$ sudo systemctl start docker
2.6 Docker版本检查
$ sudo docker version
2.7 Docker Compose版本检查
$ docker compose version
2.8 设置开机启动
为了避免每次服务器重启时,都需要手动启动Docker,可以通过如下命令,将Docker进程设置为开机启动。
$ sudo systemctl enable docker
好了,执行到这一步,说明Docker引擎安装成功了。
3. 镜像加速
由于访问国外的网站比较慢,为了后续拉取镜像,运行容器更加的快速,需要配置国内的镜像加速器,国内的镜像加速器有很多,我这里直接使用阿里云的。
3.1 找到镜像加速器
登录阿里云账号,进入控制台,选择容器镜像服务,找到镜像加速器,选中CentOS选项卡。
3.2 配置镜像加速器
按上图步骤执行四条命令即可。其中,第二条命令中的registry-mirrors
,每个账号都不同,因此,需要自行登录阿里云获取。如果不想注册阿里云账号,也可以使用百度云或网易云等的公共镜像加速器,可自行百度一下。不过,由于阿里云被使用的最多,也最稳定,因此,还是建议使用阿里云。毕竟,作为独立开发者,注册阿里云账号应该是避不开的。
4. 卸载
卸载命令如下,步骤也很简单,所以不展开说明,请谨慎使用。
$ sudo systemctl stop docker
$ sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
$ sudo rm -rf /var/lib/docker
$ sudo rm -rf /var/lib/containerd
结语
至此,Docker引擎就安装完成了,相当于打好了地基,接下来就可以在上面盖房子了。
评论0
暂时没有评论