Docker环境部署

2024-01-16

721

1

前言

基于前面的《系统架构设计》,不难发现,后续所有服务和中间件都会基于Docker部署,其重要性不言而喻,因此,本文将详细介绍如何在云服务器上搭建Docker环境。

1. 先决条件

  1. 云主机一台。当然,如果仅仅是Docker安装,本地虚拟机也可以,但如果考虑到独立开发,还是建议用云服务器,这样可以避免很多不必要的麻烦,毕竟首次购买的话,大部分云厂商都是几十块钱就可以玩一年;
  1. 系统必须是CentOS 7 或以上版本。我用的是腾讯云的OpenCloudOS 8.6系统,OpenCloudOS 8 的基础库和用户态组件完全与 CentOS 8 兼容,所以,如果你使用的系统是CentOS 8或者也完全兼容CentOS 8,那么就与我的环境基本是一致的了;
  2. 确保centos-extras仓库已启用。该仓库默认是启用的,新机可以忽略该步骤,但如果曾经禁用过,则需要重新启用。重启步骤如下:

    1. 输入如下命令(你的文件可能为CentOS-Base.repo)

      $ vim /etc/yum.repos.d/OpenCloudOS.repo
    2. 找到Extras模块,将enabled设置为1,并保存
    3. 清除缓存,并建立新的元数据缓存

      $ yum clean all
      $ yum makecache
    4. 检查是否启用成功

      $ 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 EnginecontainerdDocker 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引擎就安装完成了,相当于打好了地基,接下来就可以在上面盖房子了。

相关推荐

  1. PHP如何基于Docker安装OpenSSL扩展 2024-12-30
  2. 独立开发,这么起步或许能少走一些弯路 2024-02-02
  3. 快速部署一个在线DOS游戏网站 2024-01-28
  4. 可视化管理你的远程Docker容器-Portainer 2024-01-27
  5. 一款简单易用的反向代理神器 2024-01-20

本文作者: 老朱

原文链接: Docker环境部署

版权声明: 本站所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!

免责声明: 文中如涉及第三方资源,均来自互联网,仅供学习研究,禁止商业使用,如有侵权,联系我们24小时内删除!

Docker

评论0

😊 😃 😄 😁 😆 😅 😂 🤣 🙂 🙃 😉 😇 😏 😌 😍 😘 😗 😙 😚 😋 😛 😜 😝 😒 😔 😖 😞 😟 😠 😡 😳 😨 😰 😥 😢 😭 😱 😲 😵 😷 🤒 🤕 🤢 😴 🤤 😪 😫 😬 😮 🤲 🤜 🤛 🤚 🤝 🙏 🤞 🤟 🤘 🤙 👌 👍 👎 👊 👏 🙌 👐 💪

暂时没有评论