安装环境

  • CentOS Linux release 7.6.1810 (Core) (可以通过命令cat /etc/redhat-release查看)

安装目的

本人目前使用FastAPI进行一些Web项目开发测试,要想在目标服务器上部署FastAPI Web项目(使用Python),从当前技术来看,选择在Docker环境下部署是最佳选择方案。

基础

1 Docker版本

两个版本:

  • Docker Engine,即Docker CE,免费社团版本
  • Docker EE:企业版本

我们自然是要安装第一个。

2 三个基本概念

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

1,其中Registry是Docker用于存放镜像文件的仓库,Docker 仓库的概念跟Git 类似。

2,所谓镜像就是构建容器的源代码,是一个只读的模板,由一层一层的文件系统组成的,类似于虚拟机的镜像(英雄也是只读的,有自己的技能被动,你也不能进行操作)。

3,那么容器就是由Docker镜像创建的运行实例,类似于虚拟机,容器之间是相互隔离的,包含特定的应用及其所需的依赖文件(好比每个英雄都是隔离的,都有自己的皮肤,技能以及走的路线)。

更通俗一些讲,Docker镜像是打包好的Docker应用程序,类似于Windows系统中的软件安装包。容器则是从镜像创建的运行实例,Docker应用程序以容器方式部署和运行,一个镜像可以用来创建多个容器,容器间都是相互隔离的。Docker仓库又称为镜像仓库,类似于代码仓库,是集中存放镜像文件的地方,可以将制作好的镜像推送到仓库以发布应用程序,也可以将所需的镜像从仓库拉取到本地以创建容器来部署应用程序。注册中心是提供存放镜像仓库的地方,一个注册中心提供很多仓库。这三者的关系如图所示:

CentOS7下安装Docker 20.10.8_Docker

安装主要过程

(一)设置yum

sudo yum install -y yum-utils
#通常用阿里镜像,不用官网的  用阿里的下载docker快
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

【补充】

yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。

基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。

yum 语法

yum [options] [command] [package ...]

 

yum常用命令

  • 1. 列出所有可更新的软件清单命令:yum check-update

  • 2. 更新所有软件命令:yum update

  • 3. 仅安装指定的软件命令:yum install <package_name>

  • 4. 仅更新指定的软件命令:yum update <package_name>

  • 5. 列出所有可安裝的软件清单命令:yum list

  • 6. 删除软件包命令:yum remove <package_name>

  • 7. 查找软件包命令:yum search <keyword>

  • 8. 清除缓存命令:

    • yum clean packages: 清除缓存目录下的软件包
    • yum clean headers: 清除缓存目录下的 headers
    • yum clean oldheaders: 清除缓存目录下旧的 headers
    • yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers

 

(二)下载Docker

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

(三)启动Docker

sudo systemctl start docker

 

【补充】一些常用的基本Docker命令

#查看版本
docker --version
docker -v
#测试一下是否能用
docker run hello-world
#停止Docker
sudo systemctl stop docker
#重启Docker
sudo systemctl restart docker
#设置开机启动
sudo systemctl enable docker
#查看docker状态
sudo systemctl status docker
#查看docker内容器的运行状态
sudo docker stats
#查看docker概要信息
sudo docker info
#查看docker帮助文档
sudo docker --help
#查看镜像
docker images

(四)拉取镜像

镜像仓库标有offical image的是官方的

docker run hello-world #直接拉完就运行
docker pull hello-word #只是拉取,不运行

(五)重新加载配置信息及重启Docker服务

#重新加载某个服务的配置文件

sudo systemctl daemon-reload

#重新启动

Docker sudo systemctl restart docker

主要参考资源

  1. centos7安装Docker及简单使用
  2. CentOS Docker 安装
  3. centos7安装Docker详细步骤(无坑版教程)