Docker-基本了解

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Docker-基本了解

Docker-基本了解
一、基本概念
1、镜像
2、容器
二、执行流程
三、体系结构
一、基本概念
Docker是容器化平台,提供应用打包,部署与运行应用的容器化平台,应用程序通过docker engine(Docker 引擎获取可用资源),Docker引擎 和java虚拟机非常像。

1、镜像
镜像是只读文件,提供了运行程序完整的软硬件资源,是应用程序的集装箱。

ps: 相当于自己应用程序的安装文件

2、容器
容器是镜像的实例,为动态资源,由Docker负责创建,并统一管理,容器之间彼此隔离,单独管理,资源不冲突

ps : 运行镜像的环境:wins10可视为容器,2台电脑都安装此操作系统,其中1台有问题,不会影响另一台电脑的使用;他们都有自己独立运行的容器和资源。

二、执行流程
客户端向服务端(服务端包含三部分:docker daemon守护进程,管理的镜像以及对应的容器)发送命令,最后是注册中心,也称为远程仓库,中央仓库,存储大量镜像供下载

执行命令过程 eg:
docker pull 过程:比如从客户端发起pull redis镜像,请求到docker daemon,首先会在本地的images查看是否有redis镜像,如果没有,从远程仓库把官方提供的redis镜像拉取回来,下载到本地,由此docker pull 完成,本身负责从远程仓库下载镜像到docker本地镜像,docker的镜像相当于安装文件,如果想要运行,需要执行docker run(代表创建容器并启动服务)命令

docker run redis 过程:还是请求从客户端发起到docker daemon,先检索本地镜像库,存在则启动并维护容器,如果一个redis容器不够,可以在客户端执行docker run redis ,会再次创建redis容器,两个redis是独立的容器,独立的系统和独立的硬件资源,是互不干扰的,任何一个停掉,不会对其他有影响。如下图:

三、体系结构
Docker引擎包含三部分:
1、最内层:Docker daemon (docker服务器),也称为守护进程;
server部分为docker的核心处理部分,eg:获取镜像,创建容器,主要服务的是提供方
2、外侧有一个基于rest api的通信层, 相当于小的tomcat。基于web容器传输服务的,和客户端传输的也是标准的http请求与相应,
3、最外层的docker cli 作为docker的客户端。
docker pull 里,docker就是client提供的可执行文件

基于cs架构应用的好处:服务器和客户端可以不用安排到一个电脑上
比如:所以一个运维工程师可以通过网络管理很多台服务器,极大提高程序管理,运维的效率
————————————————
版权声明:本文为CSDN博主「甜可儿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_17033579/article/details/133301039

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
5月前
|
存储 安全 数据安全/隐私保护
在Docker中,Docker安全么?
在Docker中,Docker安全么?
|
5月前
|
运维 持续交付 Docker
在Docker中,Docker可以用来做什么?
在Docker中,Docker可以用来做什么?
|
8月前
|
Linux Go 开发者
Docker(一):认识Docker
Docker(一):认识Docker
|
8月前
|
运维 Java 虚拟化
[Docker] Docker为什么出现
[Docker] Docker为什么出现
|
8月前
|
JavaScript Linux Docker
【Docker】什么是Docker?
【4月更文挑战第20天】【Docker】什么是Docker?
|
运维 Java 程序员
【docker】对docker的理解
【docker】对docker的理解
|
Linux 测试技术 API
【Docker】Docker最近这么火,它到底是什么
【Docker】Docker最近这么火,它到底是什么
|
存储 运维 Kubernetes
为什么会有docker?Docker 是什么?
深入剖析Kubernetes学习笔记
155 0
|
Linux 测试技术 API
【Docker】什么是Docker,它用来干什么
【Docker】什么是Docker,它用来干什么
368 0