文章目录
- 一、前言
- 二、Docker的三要素
- Docker镜像
- Docker仓库
- Docker容器
- 三、Docker的安装
- 1. 确定Linux版本
- 2.安装Docker
- 3.测试是否安装成功
- 4.配置下载docker镜像的仓库
- 5.测试HelloWorld镜像
一、前言
- Docker是近年来新兴的虚拟化工具,它可以和虚拟机一样实现资源和系统环境的隔离。
- Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。
- Docker 的基础是 Linux 容器(LXC)等技术。
- Docker官网链接: https://docs.docker.com/
二、Docker的三要素
Docker镜像
- Docker 镜像就是一个只读的模板。
例如:一个镜像可以包含一个完整的 ubuntu 操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。
- 镜像可以用来创建 Docker 容器。
Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其人那里下载一个已经做好的镜像来直接使用。
Docker仓库
- 仓库是集中存放镜像文件的场所。
- 有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。
- 仓库分为公开仓库(Public)和私有仓库(Private)两种形式。
- 最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。
- 当然,用户也可以在本地网络内创建一个私有仓库。
- 当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一台机器上使用这个镜像时候,只需要从仓库上 pull 下来就可以了。
Docker容器
- Docker 利用容器来运行应用。
- 容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。
- 可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。
- 提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境
- 提供弹性的云服务。因为 Docker 容器可以随开随关,很适合动态扩容和缩容
- 组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构
三、Docker的安装
以centOS stream 8系统为例~
1. 确定Linux版本
新版本的Docker对Linux系统版本有一定的要求。如果Linux的发行版系统是centOS,安装最新版的docker需要centOS 7以上的系统。
-
在Docker安装帮助页面查看支持的系统版本。
Docker帮助页面:https://docs.docker.com/engine/install/centos/
-
打开terminal,输入
cat /etc/os-release
查看系统信息。 -
确保自己的系统满足安装要求。
[root@myfirstECS-linux ~]# cat /etc/os-release
NAME="CentOS Stream"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Stream 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_SUPPORT_PRODUCT="Red Hat Enterprise Linux 8"
REDHAT_SUPPORT_PRODUCT_VERSION="CentOS Stream"
2.安装Docker
官网提供的软件源速度比较慢,这里使用阿里云的软件源。
- step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
- Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
- Step 3: 更新yum索引列表并安装Docker引擎
sudo yum makecache fast
yum索引列表没有更新可以直接使用yum makecache
sudo yum install docker-ce
安装过程中会提示确认,输入y以确认。
- Step 4: 开启Docker服务
sudo service docker start
3.测试是否安装成功
在Terminal中输入docker version,安装成功会提示以下信息。
[root@myfirstECS-linux ~]# docker version
Client: Docker Engine - Community
Version: 20.10.12
API version: 1.41
Go version: go1.16.12
Git commit: e91ed57
Built: Mon Dec 13 11:45:22 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.12
API version: 1.41 (minimum version 1.12)
Go version: go1.16.12
Git commit: 459d0df
Built: Mon Dec 13 11:43:44 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.12
GitCommit: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
runc:
Version: 1.0.2
GitCommit: v1.0.2-0-g52b36a2
docker-init:
Version: 0.19.0
GitCommit: de40ad0
4.配置下载docker镜像的仓库
docker的默认仓库Docker Hub下载速度在国内是很慢的,需要我们替换为阿里云的仓库。
- 打开阿里云的官网,搜索容器,找到容器与镜像服务。
- 进入容器与镜像服务页面,点击镜像加速器。
-
依据页面的提示,在Terminal中输入以下指令:
-
这里注意registry-mirrors的地址每个人都是不一样的,要查看页面上显示的地址。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxxxxx.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
5.测试HelloWorld镜像
在Terminal中输入docker run hello-world。
看到 Hello from Docker! 字段说明我们的安装步骤没有问题,Docker已经成功安装~