C++GO语言微服务之docker基础-镜像-容器管理

目录

01 01-知识点概述

02 02-docker是什么

03 03-docker和虚拟机的区别

04 04-docker架构

01 05-docker安装

02 06-docker的删除

03 07-docker加速器设置

04 08-docker操作的权限问题

05 09-dcoker服务器相关的操作命令

06 10-docker镜像的查询和下载


01 01-知识点概述

02 02-docker是什么

# 第 1 章 Docker基础

## 1.1 docker简介

在这一部分我们主要讲两个方面:
docker是什么、docker特点

### 1.1.1 docker是什么

#### docker是什么?

​    docker的中文解释是**码头工人**。

**官方解释:**

​    Docker是一个开源的容器引擎,它基于LCX容器技术,使用Go语言开发。

​    源代码托管在Github上,并遵从Apache2.0协议。

​    Docker采用C/S架构,其可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。

​    Docker就是一种快速解决生产问题的一种技术手段,开发,运行和部署应用程序的开放管理平台。

​    **开发人员**能利用docker 开发和运行应用程序

​    **运维人员**能利用docker 部署和管理应用程序

03 03-docker和虚拟机的区别

#### Docker的生活场景对比:

|        |                                  |
| ------ | -------------------------------- |
| 物理机 | ![独栋别墅](assets/独栋别墅.jpg) |
| 虚拟机 | ![公寓住宅](assets/公寓住宅.jpg) |
| 容器是 | ![胶囊公寓](assets/胶囊公寓.jpg) |

#### 单独的理解一下容器:

| 动画片《七龙珠》里面的胶囊       | 1号胶囊启动后的效果          |
| -------------------------------- | ---------------------------- |
| ![龙珠胶囊](assets/龙珠胶囊.jpg) | ![完成了](assets/完成了.jpg) |

​    Docker提供了在一个完全隔离的环境中打包和运行应用程序的能力,这个隔离的环境被称为容器。

​    由于容器的隔离性和安全性,因此可以在一个主机(宿主机)上同时运行多个相互隔离的容器,互不干预。

04 04-docker架构

### 1.1.2为什么使用Docker

​    Docker使您能够将应用程序与基础架构分开,以便您可以快速交付软件。

​    借助Docker,您可以像管理应用程序一样管理基础架构。

​    通过利用Docker的方法快速进行运输,测试和部署代码,您可以显着缩短编写代码和在生产环境中运行代码之间的延迟。

**例如:**
​    开发人员在本地编写代码,可以使用Docker同事进行共享,实现协同工作。

​    使用Docker开发完成程序,可以直接对应用程序执行自动和手动测试。

​    当开发人员发现错误或BUG时,可以直接在开发环境中修复后,并迅速将它们重新部署到测试环境进行测试和验证。

​    利用Docker开发完成后,交付时,直接交付Docker,也就意味着交付完成。后续如果有提供修补程序或更新,需要推送到生成环境运行起来,也是一样的简单。

01 05-docker安装

02 06-docker的删除

**Docker主要解决的问题:**

​    保证程序运行环境的一致性;

​    降低配置开发环境、生产环境的复杂度和成本;

​    实现程序的快速部署和分发。

### 1.1.3Docker的架构与结构

**架构图**

![jg](assets/jg.png)

**Docker**是采用了(c/s)架构模式的应用程序

Client dockerCLI :客户端docker命令行

REST API : 一套介于客户端与服务端的之间进行通信并指示其执行的接口

Server docker daemon:服务端dacker守护进程等待客户端发送命令来执行

03 07-docker加速器设置

04 08-docker操作的权限问题

**Docker**的四大核心技术

IMAGE-镜像

CONTAINER-容器

DATA VOLUMES-数据卷

NETWORK-网络

05 09-dcoker服务器相关的操作命令

**Docker客户端(Docker Client)** 

Docker客户端(Docker Client)是用户与Docker进行交互的最主要方式。当在终端输入docker命令时,对应的就会在服务端产生对应的作用,并把结果返回给客户端。Docker Client除了连接本地服务端,通过更改或指定DOCKER_HOST连接远程服务端。

**Docker服务端(Docker Server)**

Docker Daemon其实就是Docker 的服务端。它负责监听Docker API请求(如Docker Client)并管理Docker对象(Docker Objects),如镜像、容器、网络、数据卷等

**Docker Registries**

俗称Docker仓库,专门用于存储镜像的云服务环境.

Docker Hub就是一个公有的存放镜像的地方,类似Github存储代码文件。同样的也可以类似Github那样搭建私有的仓库。

**Docker 对象(Docker Objects)** 

镜像:一个Docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件等。

容器:镜像被运行起来后的实例。

网络:外部或者容器间如何互相访问的网络方式,如host模式、bridge模式。

数据卷:容器与宿主机之间、容器与容器之间共享存储方式,类似虚拟机与主机之间的共享文件目录。

06 10-docker镜像的查询和下载

### 1.1.4官方资料:

Docker 官网:http://www.docker.com

Github Docker 源码:https://github.com/docker/docker

Docker 英文文档网址:https://docs.docker.com/

Docker 中文文档网址:http://docker-doc.readthedocs.io/zh_CN/latest/





### 1.1.4docker特点

三大理念:
构建:龙珠里的胶囊,将你需要的场景构建好,装在一个小胶囊里

运输:随身携带着房子、车子等,非常方便

运行:只需要你轻轻按一下胶囊,找个合适的地方一放,就ok了

优点:
多:    适用场景多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值