作者简介: 在 读 机 器 人 研 究 生 , 目 前 研 一 。 对 计 算 机 后 端 感 兴 趣 , 喜 欢 c + + , g o , p y t h o n , 目 前 熟 悉 c + + , g o 语 言 , 数 据 库 , 网 络 编 程 , 了 解 分 布 式 等 相 关 内 容 \textcolor{orange}{在读机器人研究生,目前研一。对计算机后端感兴趣,喜欢c++,go,python,目前熟悉c++,go语言,数据库,网络编程,了解分布式等相关内容} 在读机器人研究生,目前研一。对计算机后端感兴趣,喜欢c++,go,python,目前熟悉c++,go语言,数据库,网络编程,了解分布式等相关内容
个 人 主 页 : \textcolor{gray}{个人主页:} 个人主页: 小呆鸟_coding
支 持 : \textcolor{gray}{支持:} 支持: 如 果 觉 得 博 主 的 文 章 还 不 错 或 者 您 用 得 到 的 话 , 可 以 免 费 的 关 注 一 下 博 主 , 如 果 三 连 收 藏 支 持 就 更 好 啦 \textcolor{green}{如果觉得博主的文章还不错或者您用得到的话,可以免费的关注一下博主,如果三连收藏支持就更好啦} 如果觉得博主的文章还不错或者您用得到的话,可以免费的关注一下博主,如果三连收藏支持就更好啦 就 是 给 予 我 最 大 的 支 持 ! \textcolor{green}{就是给予我最大的支持!} 就是给予我最大的支持!
本文摘要
本专栏将非常细致的讲解docker原理、安装、用docker部署相关服务器以及使用docker部署自己的镜像,非常简单易懂。 本文主要讲解docker基本概述。 文章目录
- docker 概述
- 1. Docker 概述
- 2. Docker的出现
- Docker作用
- Docker思想
- Docker VS 虚拟机
- 3. Docker能做什么
- 虚拟机技术
- Docker容器化技术
- Docker 和虚拟机技术的不同
- DevOps(开发、运维)
- 4. Docker名词概念
- 镜像(image):
- 容器:(container)
- 仓库(repository):
Docker系列文章:
一、Docker概述
二、Docker安装大全
三、Docker 命令大全
四、Docker容器部署
五、Docker镜像详解
六、Docker容器卷详解
七、 Dockerfile详解
八、Docker网路模式详解
笔记总结:https://www.bilibili.com/video/BV1og4y1q7M4
可面试可复习
Docker 是一个基于go语言开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像
中,然后发布到任何流行的 Linux
或Window
操作系统的机器上,也可以实现虚拟化
。容器是完全使用沙箱
机制,相互之间不会有任何接口。
一个完整的Docker有以下几个部分组成:
DockerClient客户端
Docker Daemon守护进程
Docker Image镜像
DockerContainer容器
一款产品:开发—>上线 俩套环境,应用配置!
开发与运维的爱恨纠缠:我开发好的程序,放到别人的电脑上,就是运行不了(各种问题,要么缺少配置,要么缺少依赖,要么缺少库),可能还会遇到,版本更新,导致服务不可用!对于运维人来说,巨大考验。
环境配置是一件非常头疼的事:
每一个集群都要部署环境(redis、ES、Hadoop)
发布一个项目(jar+(Redis + MySQL + jdk + ES)),项目不能带上环境打包。
在服务器配置的一个应用环境Redis、MySQL、jdk、ES、Hadoop,配置麻烦,不能跨平台。
Docker为了解决上述问题
java – apk --发布(应用商店)-- 小呆鸟使用apk – 安装即可
java --jar(环境) — 打包项目带上环境(镜像)— (Docker仓库:商店)-- 下载我们发布的镜像 – 直接运行即可。
vmware :linux centos原生镜像(虚拟出一台电脑) 隔离,需要开启多个虚拟机! 几个G 几分钟
docker :隔离,镜像(最核心环境 4m + jdk + mysql)十分小巧,运行镜像就可以! 几个M或者KB 秒级
虚拟机技术缺点:
容器化技术不是模拟一个完整的操作系统
:例如你打开了一个虚拟机,里面装有linux系统,打开后,里面会有一些自带的浏览器,一些插件,但是docker里面什么也没有。
应用更快速的交付和部署
传统: 一堆帮助文档,安装程序
Docker: 打包镜像发布测试,一键运行
更便捷的升级和扩缩容
使用了Docker之后,我们的部署应用就和搭积木一样!项目打包为一个镜像,扩展 服务器A ! 服务器B
传统 :我要升级APP(redia, mysql, tomcat),此时我要把mysql,redis等APP需要的软件,都要升级
Docker: 我只需要把这个镜像升级一下。(把(redia, mysql, tomcat)做成一个镜像)。
更简单的系统运维
更高效的计算资源利用
docker镜像就好比一个模板(class类),可以通过这个模板来创建容器服务(根据class类,来创建对象), tomcat镜像==> run ==> tomcat01容器 (提供服务)。
Docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建
启动、停止、删除、基本命令!
仓库就是存放镜像的地方!
仓库分为公有仓库和私有仓库!
Docker Hub(默认是国外的)
阿里云等都有容器服务器(配置镜像加速!)
流程:用客户端来启动Docker里面的一个容器,这个容器要去服务器上下载。