Docker安装
Docker的基本组成
镜像(image):
Docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像 -> run -> tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终服务运行或者项目运行就是在容器中)
容器(container):
Docker利用容器技术,独立运行一个或者一个组应用,通过镜像来创建的。启动,停止,删除,基本命令!目前就可以把这个容器理解为就是一个简易的linux系统
仓库(repository):
仓库就是存放镜像的地方,仓库分为公有仓库和私有仓库!Docker Hub(默认是国外的)阿里云…都有容器服务器(配置镜像加速!)
安装Docker
远程查看
# 查看系统内核
[root@iZ2zeg7mctvft5renx1qvbZ ~]# uname -r
4.18.0-305.3.1.el8.x86_64
# 查看系统版本
[root@iZ2zeg7mctvft5renx1qvbZ ~]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
安装
# 1. 卸载旧的Docker
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
# 2. 需要的安装包
yum install -y yum-utils
# Set up the repository【设置存储库】
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 默认是国外的仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo # 推荐 国内镜像地址
# 3. 将软件包信息提前在本地索引缓存,用来提高搜索安装软件的速度,建议执行这个命令可以提升yum安装的速度。
yum makecache fast # centos 7 下的命令,并不适用 centos 8
dnf makecache # centos 8下用这个即可
# 4. 安装Docker引擎、容器和Docker Compose: [ce: 社区版]
yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 5. 启动Docker
systemctl start docker
# 6. 查看是否启动成功
Docker version
# 7. hello - world
docker run hello-world
# 8. 查看一下下载的这个 hello-world镜像
[root@iZ2zeg7mctvft5renx1qvbZ ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest 9c7a54a9a43c 6 months ago 13.3kB
了解,卸载Docker
# 1. 卸载Docker Engine、CLI、容器和Docker Compose软件包:
yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
# 2. 主机上的映像、容器、卷或自定义配置文件不会自动删除。要删除所有图像、容器和卷,请执行以下操作:
rm -rf /var/lib/docker
rm -rf /var/lib/containerd
阿里云镜像加速
阿里云镜像加速说明:https://cr.console.aliyun.com/cn-beijing/instances/mirrors
- 安装/升级Docker客户端
推荐安装1.10.0以上版本的Docker客户端,参考文档docker-ce
- 配置镜像加速器
针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://u53f4pj4.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
回顾HelloWorld流程
底层原理
Docker是怎么工作的?
Docker是一个Client - Server结构的系统,Docker的守护进程运行在主机上,通过Socket从客户端访问!
DockerServer接收到Docker-Client的指令,就会执行这个命令!
Docker为什么比linux快?
- Docker有着比虚拟机更少的抽象层。
- docker利用的是宿主机的内核,vm需要是Guest OS。
所以说,新建一个容器的时候,docker不需要像虚拟机一样重新加载一个操作系统内核,避免引导,虚拟机是加载Guest OS,分钟级别的,而docker是利用宿主机的操作系统,省略了这个复杂的过程,秒级!
说明:摘抄B站 “狂神说” 视频