云服务器CentOS8.2安装部署Docker一文详解

简介: 云服务器CentOS8.2安装部署Docker一文详解

一、Docker简介


之前使用centos虚拟机安装部署hadoop时经常会安装到其他组件,有时候遇到下载速度过于慢的时候我们就会去换个镜像,比如阿里镜像和清华镜像等,这些镜像都是采用的Docker技术实现的。我们经常会与Docker技术打交道但是在还不了解Docker之前还不知道我们使用了该技术,现我们先简单了解Docker技术。


虚拟机属于服务器虚拟化技术。而 Docker 这样轻量级的虚拟化,属于操作系统虚拟化技术。Docker有三大核心概念,分别是:


  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)


简而言之Docker就是一个开源容器引擎技术,通过类似Git的操作方式来构建,分发Image,是容器更加灵活快速。


二、安装部署以及测试Docker


本次安装操作仍是用SecureCRT连接虚拟机,在此之上进行部署和测试,云服务器上面的web界面的指令操作不太好用。


1.安装Docker


Install Docker Engine on CentOS 这是官方安装Docker引擎的文档,当然全是英文,按照本文的步骤安装是一样的。


要开始在CentOS上使用Docker Engine,要先做好准备工作和看清楚依赖。


1.1查看系统版本


要安装Docker Engine,需要CentOS 7、CentOS 8(stream)或CentOS 9(stream)等以上版本。不支持或测试存档版本。必须启用centos extras存储库。默认情况下,此存储库已启用,但如果已禁用,则需要重新启用它,建议使用Overly2存储驱动程序。


如果不确定版本的话建议再查看一下版本1,Docker官方更新至少需要7.0以上,查看内核版本:

uname -a

f50ef3e32e9f4558826802876973ab1b.png


1.2移除旧依赖


我这台新的服务器理应是没有其他docker旧依赖的,但为了安全以及演示,执行一遍:


 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

585e94a96d564ac7acb6810ea47adc83.png


可以看到是没有匹配到这些目录文件的。


1.3安装方法


官方给出的安装方法有三种:

第一种:大多数用户设置Docker的存储库并从中安装,以便于安装和升级任务。官方推荐那么我们就选这种安装方法。


第二种:一些用户下载RPM软件包并手动安装,并完全手动管理升级。这在诸如在 air-gapped系统上安装Docker而无法访问internet的情况下非常有用。


第三种:在测试和开发环境中,一些用户选择使用自动便捷脚本来安装Docker。


1.4设置存储库


安装yum-utils包(提供yum-config-manager实用程序)并设置存储库。


sudo yum install -y yum-utils


e7a4bf04d6934c93bb27d04a0fbfdd08.png

 sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

接着连输入两个y:


056a98262e18444da2b8fb828c56c353.png


1.5安装Docker引擎


安装最新版本的Docker Engine、containerd和Docker Compose,或转至下一步安装特定版本:


sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin


此命令安装Docker,但不启动Docker。它还创建了一个docker组,但默认情况下不会向该组添加任何用户。


要安装特定版本的Docker Engine,请在repo中列出可用版本,然后选择并安装:


yum list docker-ce --showduplicates | sort -r


此示例按版本号(从高到低)对结果进行排序,并被截断:

eb5222ba8bda49dca6c001f64bee1a91.png


返回的列表取决于启用了哪些存储库,并且特定于您的CentOS版本(在本例中由.el7后缀表示)。我推荐还是使用最新版本的Docker:


这里要把yum文件修改一下,不然会报错:


Invalid configuration value: failovermethod=priority in /etc/yum.repos.d/CentOS-Epel.repo; Configuration: OptionBinding with id "failovermethod" does not exist

修改:


vi /etc/yum.repos.d/CentOS-Epel.repo


将failovermethod=priority给注释掉:


9ac1c79312b046fab1944575e962112b.png


然后直接下载最新版docker:

 

yum install docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io docker-compose-plugin


还是报错:

Error: 
 Problem 1: problem with installed package podman-3.3.1-9.module_el8.5.0+988+b1f0b741.x86_64

错信息是已经有了 podman 和 buildah , 操作系统只允许一个容器工具存在。看样子腾讯云自带podman,其实个人觉得podman比docker好使,为了演示没办法了。


既然不兼容那么我们就把pdoman卸载:


yum -y erase podman buildah


868a0dc5abdd44769f941124c01ad7e3.png


再次安装docker:

04c6a79aab5b42c7933e7e28e7fd4a7e.png

9b28f588f94d48dfb2fcb5f295eaa7a3.png


这样就是安装成功了。


1.6启动Docker


sudo systemctl start docker


通过运行hello world映像,验证Docker引擎是否已正确安装。


sudo docker run hello-world


此命令下载测试映像并在容器中运行。当容器运行时,它打印一条消息并退出。

这将安装并运行Docker引擎。使用sudo运行Docker命令。继续Linux postinstall以允许非特权用户运行Docker命令和其他可选配置步骤。

b1d9246be34647108473a0c67efdbd0a.png

也可以通过命令查看docker是否安装成功:


yum list installed |grep docker

e77323c1b2ee4e599e68a2eae3190bb4.png


设置一下开机自动启动:


systemctl enable docker.service

a423630fccca4996b6e26a420e7a80f1.png

查看docker服务状态 running就是启动成功:


systemctl status docker

c9014f24ecdb481894604e40cbefaee0.png

1.7配置docker国内镜像


创建一个JSON文件:


vim /etc/docker/daemon.json


配置一个国内镜像:中科大

91d91b161b53433c91bf7795de64df5b.png

最后重启一下docker服务


systemctl restart docker.service

 

OK,Docker完成部署。

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
打赏
0
0
0
0
33
分享
相关文章
DeepSeek服务器繁忙解决方法:使用阿里云一键部署DeepSeek个人网站!
通过阿里云一键部署DeepSeek个人网站,解决服务器繁忙问题。学生用户可领取300元代金券实现0成本部署,普通用户则可用99元/年的服务器。教程涵盖从选择套餐、设置密码到获取百炼API-KEY的全流程,助您快速搭建专属大模型主页,体验DeepSeek、Qwen-max、Llama等多款模型,无需代码,最快5分钟完成部署。支持绑定个人域名,共享亲友使用,日均成本仅约1元。
47 10
【Syslog】Centos下的syslog服务器配置
通过本文的配置指导,您不仅学会了如何安装和配置 `rsyslog`,还掌握了如何在防火墙中开放必要的端口,并验证服务器的配置是否正确。希望这些知识能够帮助您更好地管理和维护您的Linux系统。
50 15
|
3天前
|
在Docker上部署Ollama+AnythingLLM完成本地LLM Agent部署
通过以上步骤,您可以成功在Docker上部署Ollama和AnythingLLM,实现本地LLM Agent的功能。在部署过程中,确保环境和配置正确,以避免不必要的问题。希望本文能够帮助您顺利完成部署,并在本地环境中高效地使用LLM模型。
97 8
Docker——阿里云服务器利用docker搭建redis集群
本文详细记录了使用Docker搭建Redis集群的过程,包括检查Docker和Docker Compose的安装、创建Redis配置文件、编写`docker-compose.yml`文件、启动Redis节点、创建Redis集群的具体步骤,以及最终的验证方法。文章还提供了在多服务器环境下搭建Redis集群的注意事项,帮助读者全面了解 Redis 集群的部署流程。
60 12
【已解决】Matomo本地SMTP配置可以发邮件,但部署到阿里云ECS就发不了邮件
在阿里云ECS上使用Matomo和PHPMailer发送邮件时遇到问题,邮件无法发出且接口调用Pending。经过排查,发现是ECS安全组未开放25/465端口,导致SMTP请求无法正常通信。解决方法为在安全组中配置并开放25/465端口,从而恢复邮件发送功能。
在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose
本文介绍了在阿里云ECS上使用Ubuntu系统安装和配置Docker及Docker Compose的详细步骤。通过这些工具,可以快速部署、弹性扩展和高效管理容器化应用,满足开发和运维需求。内容涵盖Docker的安装、镜像源配置、创建Web程序镜像以及使用Docker Compose部署WordPress等实际操作,并分享了使用体验,展示了阿里云实例的高性能和稳定性。
205 4
Linux服务器部署docker windows
在当今软件开发中,Docker成为流行的虚拟化技术,支持在Linux服务器上运行Windows容器。流程包括:1) 安装Docker;2) 配置支持Windows容器;3) 获取Windows镜像;4) 运行Windows容器;5) 验证容器状态。通过这些步骤,你可以在Linux环境中顺利部署和管理Windows应用,提高开发和运维效率。
74 1
Docker——阿里云服务器使用Docker部署python项目全程小记
本文记录了我在阿里云服务器上使用Docker部署python项目(flask为例)的全过程,在这里记录和分享一下,希望可以给大家提供一些参考。
使用域名访问部署在ECS上的网站
本文为您介绍如何为网站配置域名并为域名配置HTTPS证书。
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等