docker——环境搭建

准备知识

一、Docker官方架构

​ docker使用C/S架构模式;

Docker 仓库(Registry)

​ Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker Hub 供了庞大的镜像集合供使用。

Docker daemon

​ Docker daemon 是服务器组件,是 Docker 最核心的后台进程,我们也把它称为守护进程。

Docker 客户端(Client)

​ Docker 客户端通过命令行或者其他工具使用 Docker API 与 Docker 的守护进程通信。

Docker 主机(Host)

​ 一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

Docker 镜像(Images)

​ Docker 镜像是用于创建 Docker 容器的模板。

Docker 容器(Container)

​ 容器是独立运行的一个或一组应用。

二、Docker生态

新时代变化

​ 1.数据量大幅增加;

​ 2.处理数据的能力快速增加;

​ 3.软件需求也是大幅增加;

发布频繁

​ (1)研发模式从瀑布开发变成了敏捷开发,从以前一个软件有多个需求,需要将多个需求全部开发完成在进行上线变成了对一个需求快速研发上线,反馈不好在进行回退;

​ (2)由于上线之后软件可能存在大量的问题,所以需要支持软件版本的快速回滚;

软件需要共享

​ 保证软件可以很好地共享给其他用户,不会出现各种问题,所以软件的打包也是一个诉求;

环境搭建复杂、技术繁多

​ 复杂的环境部署起来成本十分高昂,所以需要解决运维的问题;

docker解决方案:

​ 对于海量数据 ,各大厂商提供了服务器,支持软件的研发,提高处理数据的能力;

​ 对于软件频繁发布变更和共享 ,使用中心仓库存放大量镜像文件支持各个服务器快速下载;

​ 对于软件快速启动和回滚 ,将docker容器需要的所有依赖信息设计成一种软件格式,并支持版本化,所以就设计了镜像文件,不同版本的镜像文件,可以快速完成版本替换;

​ 对于不同的开发环境搭建,docker设计了镜像文件,可以使用命令快速完成搭建;

三、Docker安装

​ 分为server版本(命令行式)和桌面版本(GUI);

centos安装

​ 1.安装依赖;

bash 复制代码
#支持的操作系统:centos7 8 9,建议使用7;
#支持的CPU:ARM(精简指令集,使用多核进行工作)/X86_64(复杂指令集,单核性能高)

​ 2.docker安装;

bash 复制代码
1.检查是否有依赖;
which docker
2.清理原有docker;
(1)删除旧版本docker(新版本叫做docker-ce)
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
(2)删除历史版本
sudo yum remove docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin docker-ce-rootless-extras
(3)删除软件保留数据
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
3.安装docker;
(1)配置yum源并替换成国内源
sudo yum install -y yum-utils;sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo
(2)安装最新版docker
sudo yum install -y docker-ce docker-ce-cli containerd.io dockerbuildx-plugin docker-compose-plugin
引擎 客户端 运行时引擎 构建工具 编排工具
4.启动docker
(1)加载配置
sudo systemctl daemon-reload
(2)启动服务
sudo systemctl start docker
(3)开机自启
sudo systemctl enable docker
(4)查看服务状态
sudo systemctl status docker
5.修改镜像源
cd /etc/docker;echo '{
	"registry-mirrors":["https://docker.mirrors.ustc.edu.cn/"]
}' > daemon.json(docker的配置文件)
6.修改镜像根目录(会存放大量镜像文件,需要考虑控制空间)
"data-root": "/data/var/lib/docker"添加到文件中,满足格式要求;
7.验证使用docker;
docker run hello-world
相关推荐
一技安身5 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器
IT_Octopus5 小时前
IntelliJ 本地日志路径自定义:`-DLOG_PATH=./logs` 为什么总“不听话“
java·log4j·intellij-idea
长征coder6 小时前
【无标题】
java·性能优化
新时代牛马6 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
Bs_MoneyMagnet7 小时前
基于springboot+vue的医疗健康便民服务平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
sunshine22 girl7 小时前
Java学习一 环境配置2 Idea的入门使用和maven配置,项目启动脚本配置
java·maven
有点。8 小时前
*C++哈夫曼树与哈夫曼编码
java·c++·servlet
CRMEB系统商城9 小时前
CRMEB标准版系统(Java)v3.1正式发布
java·spring·微信小程序·php·教育电商
写后端的胖头鱼9 小时前
【高频面试题】Java 基础类型 + 包装类 + String 互相转换
java·开发语言
weixin_460443569 小时前
企业考试系统从.NET迁移到Java+Linux:数据库迁移、接口兼容与灰度切换实践
java·煤矿培训考试系统·煤矿在线考试系统·煤矿安全培训·煤矿考试系统·一人一档