文章目录
- Docker安装
- Docker的基本组成
- 安装Docker
- 环境准备
- 环境查看
- 安装(centos)
- 阿里云镜像加速
- 回顾hello-world流程
- 底层原理
Docker安装
Docker的基本组成
镜像(image):
docker镜像就好比一个模板,可以通过这个模板来创建容器服务,tomcat镜像=》run==》tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终的服务运行或项目运行就是在容器中的)
容器(container):
Docker利用容器技术可以做到独立运行一个或一组应用,通过镜像来创建的
启动,停止,删除,基本命令!
目前就可以把这个容器理解为一个简易的linux系统
仓库(repository):
仓库就是存放镜像的地方!
仓库分为共有仓库和私有仓库!
Docker Hub(默认国外的)
阿里云。。。都有容器服务(配置镜像加速!)
安装Docker
环境准备
- 需要一点点的linux基础
- CentOS 7
- 使用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
# 7.通过运行hello-world 映像来验证是否正确安装了Docker Engine 。
sudo docker run hello-world
# 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的默认工作路径
阿里云镜像加速
- 登录阿里云找到容器服务
- 找到镜像加速地址 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流程
底层原理
Docker是怎么工作的?
Docker是一个Client-Server 结构的系统,Docker的守护进程运行在主机上。通过Socket从客户端访问
DockerServer接收到Docker Client指令,就会执行这个命令
1. Docker为什么比虚拟机快
Docker有着比虚拟机更少的抽象层
Docker利用的是宿主机的内核,vm需要的是Guest OS
所以说,新建一个容器的时候,docker不需要向虚拟机一样重新加载一个操作系统内核,避免引导操作。虚拟机试加载Guest OS,分钟级别的,而docker是利用宿主机的操作系统,省略了复杂的过程,秒级的