Docker基础
1.安装
docker安装地址:https://docs.docker.com/engine/install/centos/
Docker 并非一个通用的容器工具,它依赖于已存在并运行的Linux内核环境
Docker实质是在已经运行的Linux下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的Linux主机
所以,如果系统想部署一个Docker就必须先安装一个Linux环境
前提条件:
- CentOS仅发行版本中的内核支持Docker,Docker运行在CentOs 7(64-bit)上
linux 查看当前系统相关信息(内核版本、硬件架构、主机名称和操作系统等)
//查看内核
cat /etc/redhat-release uname-r
安装步骤:
1.确定是centOS7及以上版本
1 | cat /etc/redhat-release |
2.卸载旧版本
3.yum安装gcc相关
yum -y install gcc //安装gcc c++ yum -y install gcc c++
4.安装需要的软件包
1 | yum install -y yum-utils |
5.设置stable镜像仓库
1 2 3 | 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 |
6.更新yum软件包索引
1 | yum makecache fast |
7.安装docker ce
yum -y install docker-ce docker-ce-cli containerd.io
8.启动docker
1 | systemctl start docker ps -ef | grep docker |
9.测试
docker run hello-word
查看docker 版本
1 | docker version |
10.卸载
//停止 systemctl stop docker //移除 yum remove docker-ce docker-ce-cli containerd.io //强制删除 rm -rf/var/lib/docker rm -rf/var/lib/containerd
2.Docker的基本组成
1.镜像
镜像(Image)就是一个只读的模板(可以看做是容器的模板),镜像可以用来创建Docker容器,一个镜像可以创建很多容器。也是一个文件,image文件,成为镜像文件
2.容器
容器就类似于一个虚拟化的运行环境,容器是用镜像创建的运行实例,容器为镜像提供了一个标准的和隔离的运行环境,他可以被启动、开始、停止、删除、每个容器都是相互隔离的、保证安全的平台。
可以把容器看做一个简易版的Linux环境和运行在其中的一个应用程序。
3.仓库
存放镜像的位置,我们可以把镜像发布到仓库中,需要的时候再从仓库中拉下来使用
3.DOcker基本流程(混个眼熟,没混明白,后面再了解吧)
1.用户是使用docker client与docker daemon建立通信,并发送请求给后者。
2.docker daemon作为docker架构中的主体部分,首先提供docker server的功能使其可以接受docker client的请求
3.docker engine执行docker内部的一系列工作,每一项工作都是以一个job的形式存在
4.job的运行过程中,当需要容器镜像时,则从docker registry中下载镜像,并通过镜像管理驱动graph driver将下载镜像以graph的形式存储
5.当需要为docker创建网络环境时,通过网络管理驱动network driver 创建并配置docker容器网络环境
6.当需要限制docker容器运行资源或执行用户指令等操作时,则通过exec driver来完成
7.Libcontanier是一项独立的容器管理包,network driever以及exec driver都是通过Libcontanier来实现具体对容器进行的操作
本文来自博客园,作者:zhupan,转载请注明原文链接:https://www.cnblogs.com/zhupanpan/p/17666859.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?