文章目录

  • Docker安装
  • Docker的基本组成
  • 安装Docker
  • 环境准备
  • 环境查看
  • 安装(centos)
  • 阿里云镜像加速
  • 回顾hello-world流程
  • 底层原理


Docker安装

Docker的基本组成

在dockerfile中安装yum docker 安装_在dockerfile中安装yum

镜像(image)

docker镜像就好比一个模板,可以通过这个模板来创建容器服务,tomcat镜像=》run==》tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终的服务运行或项目运行就是在容器中的)

容器(container)

Docker利用容器技术可以做到独立运行一个或一组应用,通过镜像来创建的

启动,停止,删除,基本命令!

目前就可以把这个容器理解为一个简易的linux系统

仓库(repository)

仓库就是存放镜像的地方!

仓库分为共有仓库和私有仓库!

Docker Hub(默认国外的)

阿里云。。。都有容器服务(配置镜像加速!)

安装Docker

环境准备

  1. 需要一点点的linux基础
  2. CentOS 7
  3. 使用xshell连接远程服务器进行操作

环境查看

# 系统内核是4.18
[root@ecs-029-docker ~]# uname -r
4.18.0-80.7.2.el7.aarch64
# 系统版本
[root@ecs-029-docker ~]# cat /etc/os-release 
NAME="CentOS Linux"
VERSION="7 (AltArch)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (AltArch)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

安装(centos)

帮助文档:

# 1.卸载旧的版本 Uninstall old versions
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
                  
# 2.下载需要的安装包 SET UP THE REPOSITORY
$ sudo yum install -y yum-utils

# 3.设置镜像的仓库
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo # 默认为国外的
    
sudo yum-config-manager \
    --add-repo \
    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 国内镜像,推荐使用阿里云
    
# 更新软件包索引

# 4.安装docker相关的内容 docker-ce 社区 ee 企业版
sudo yum install docker-ce docker-ce-cli containerd.io

# 5.启动docker
sudo systemctl start docker

# 6.使用docker verson查看是否安装成功
docker version

在dockerfile中安装yum docker 安装_Docker_02

# 7.通过运行hello-world 映像来验证是否正确安装了Docker Engine 。
sudo docker run hello-world

在dockerfile中安装yum docker 安装_Docker_03

# 8.查看下载的hello-world镜像
^H^H^H^H^H[root@ecs-029-docker ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              a29f45ccde2a        9 months ago        9.14kB

了解:卸载docker

# 1.卸载Docker Engine,CLI和Containerd软件包:
sudo yum remove docker-ce docker-ce-cli containerd.io

# 2.主机上的映像,容器,卷或自定义配置文件不会自动删除。要删除所有图像,容器和卷:
sudo rm -rf /var/lib/docker

# /var/lib/docker docker的默认工作路径

阿里云镜像加速

  1. 登录阿里云找到容器服务
  2. 找到镜像加速地址 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://bbdkt07c.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

回顾hello-world流程

在dockerfile中安装yum docker 安装_在dockerfile中安装yum_04

底层原理

Docker是怎么工作的?

Docker是一个Client-Server 结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问

DockerServer接收到Docker Client指令,就会执行这个命令

在dockerfile中安装yum docker 安装_centos_05

1. Docker为什么比虚拟机快

Docker有着比虚拟机更少的抽象层

Docker利用的是宿主机的内核,vm需要的是Guest OS

在dockerfile中安装yum docker 安装_在dockerfile中安装yum_06

所以说,新建一个容器的时候,docker不需要向虚拟机一样重新加载一个操作系统内核,避免引导操作。虚拟机试加载Guest OS,分钟级别的,而docker是利用宿主机的操作系统,省略了复杂的过程,秒级的

在dockerfile中安装yum docker 安装_Docker_07