docker笔记1--了解docker
1 docker是什么
(1)背景
docker是基于go语言实现的开源容器项目。目标是实现"build ship and run any app,anywhere",通过对应用的封装,分发,部署,运行生命周期进行管理,达到应用组件级别的一次封装,到处运行。也就是说方便测试开发运维各个部门能够在同样的环境干活,提高效率,尽量较少因为环境问题降低交付效率。
(2) 怎么演化而来
它是从linux容器LXC技术而来,docker提供了各种容器管理的工具,引入分层文件系统构建和高校的镜像机制,降低迁移的难度。可以理解为Docker容器是一种轻量级的沙盒,每个容器里面运行一个应用,不同的容器相互隔离,容器之间呢可以通过网络通信。
2 为什么使用docker
(1)docker的好处
比如咋们需要创建一个网站,试图采用LAMP的方式。首先需要安装Apache,mysql,php以及依赖的环境,各种的调试准备,一旦服务器需要迁移怎么搞,再装一次?这样子是不是太浪费时间了。docker提供了比较聪明的方式,通过容器来打包应用,解耦应用和运行平台。
(2)docker在开发和运维的优势
- 更快速的交付和部署
- 更高效的资源利用
- 运行容器不需要额外的虚拟化管理程序支持。
- 更轻松的迁移和扩展
docker容器几乎可以在任意的平台运行。包括物理机,虚拟机,公有云。。
- 更简单的更新管理
使用dockerfile实现自动化而且高校的容器管理
(3)docker与虚拟机的比较
- docker容器更快
- 启动和停止在秒级实现
- docker容器对系统资源的需求更少
- 一台主机可以同时运行数千个容器
docker通过类似git设计理念来操作,方便用户获取、分发和更新应用镜像,存储复用等
docker通过dockerfile支持灵活的自动化创建和部署机制,提供工作机制。

3 docker应用场景
(1)作为云主机使用
相比虚拟机来说,容器使用的是一系列非常轻量级的虚拟化技术,使得其启动、部署、升级跟管理进程一样迅速,用起来灵活又感觉跟虚拟机一样没什么区别,所以有些人直接使用Docker的Ubuntu等镜像创建容器,当作轻量的虚拟机来使用。
(2)作为服务应用
Docker容器最重要价值在于提供一整套平台无关的标准化技术,简化服务的部署、升级、维护,只要把需要运维的各种服务打包成标准的集装箱,就可以在任何能运行docker的环境下跑起来,达到开箱即用的效果,这个特点才是Docker容器风靡全球的根本原因。下
- web应用服务
典型的后台开发模型,前端的java web使用docker容器,先将Java运行环境、web服务器直接打包成一个通用的基础docker镜像,之后再将自定义应用代码或编译程序包加入到该基础镜像中就能产生一个新的应用镜像,最后通过docker服务以容器的方式启动web服务。
- 持续集成持续部署
互联网行业倡导敏捷开发,持续集成部署CI/CD便是最典型的开发模式。使用docker容器云平台,就能实现从代码编写完成推送到git/svn后,自动触发后端CaaS平台将代码下载、编译并构建成测试docker镜像,再替换测试环境容器服务,自动在Jenkins或者Hudson中运行单元/集成测试,最后测试通过后,马上就能自动将新版本镜像更新到线上,完成服务升级。整个过程全自动化,一气呵成,最大程度地简化了运维成本,而且保证线上、线下环境完全一致,而且线上服务版本与git/svn发布分支也实现统一。

docker笔记1--了解docker的更多相关文章
- Docker笔记--ubuntu安装docker
Docker笔记--ubuntu安装docker 1.更换国内软件源,推荐中国科技大学的源,稳定速度快(可选) sudo cp /etc/apt/sources.list /etc/apt/sourc ...
- Docker笔记一:Docker介绍
目录 什么是Docker? Docker的核心概念 Docker镜像命令 Docker容器命令 Docker实战 查看我的镜像 启动Redis Docker中国镜像加速 血与泪的教训 什么是Docke ...
- 一、【Docker笔记】进入Docker世界
我们平时判断一个电脑的性能主要看什么?磁盘读写?CPU的主频高低?还是内存的大小?可是作为个人使用者来说,这些参数高一些足够我们去使用了,可是对于一个大型系统甚至是超大型系统,当前的硬件是远远达不 ...
- Docker笔记7:Docker 命令自动补齐
经常大家会碰到这种现象,Docker 已经安装好了,但是使用 docker 命令时 不能自动补齐,即输入 docker 命令后,按 Tab 键无法列出子命令(或参数)的候选项. [机制] Linux ...
- Docker笔记6:Docker 常见命令及镜像管理
目 录 一.Docker 常用命令 docker version 命令 docker info 命令 二.Docker 镜像管理 搜索镜像:docker search 镜像名 获取镜像:docker ...
- Docker笔记2:Docker 镜像仓库
Docker 镜像的官方仓库位于国外服务器上,在国内下载时比较慢,但是可以使用国内镜像市场的加速器(比如阿里云加速器)以提高拉取速度. Docker 官方的镜像市场,可以和 Gitlab 或 GitH ...
- Docker笔记1:Docker 的介绍
目 录 1.Docker 简介 2.Docker 特性 3.Docker 应用场景 4.Docker 优点 1.Docker 简介 Docker 提供了一个可以运行你的应用程序的封套(env ...
- Docker笔记(二):Docker管理的对象
原文地址:http://blog.jboost.cn/2019/07/14/docker-2.html 在Docker笔记(一):什么是Docker中,我们提到了Docker管理的对象包含镜像.容器. ...
- Docker笔记(四):Docker镜像管理
原文地址:http://blog.jboost.cn/2019/07/16/docker-4.html 在Docker中,应用是通过容器来运行的,而容器的运行是基于镜像的,类似面向对象设计中类与对象的 ...
随机推荐
- Linux——自定义服务命令
前言 这个写部署禅道的时候包含了这个内容,但是今天弄的时候突然忘记了,所以还是重新写下. 步骤 有的同学可能会不知道一些系统自带的目录是什么意思,所以我这里就拆分下,不直接创建 进入到系统服务目录 c ...
- canvas绚丽的随机曲线
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAyMAAAHECAIAAAClb2KBAAAgAElEQVR4nOyd+VsaV/v/Pz/UpW3abJ ...
- python基础知识总结大全(转载)
- 关于new FormData() 对象的用法
formData.append() 理论上本身若键值已经存在,那么我们append的数据是进行类似push的操作,为了匹配php,我们进行加了[] ,这个操作.!
- Python爬虫进阶 | 异步协程
一.背景 之前爬虫使用的是requests+多线程/多进程,后来随着前几天的深入了解,才发现,对于爬虫来说,真正的瓶颈并不是CPU的处理速度,而是对于网页抓取时候的往返时间,因为如果采用request ...
- circus 进程以及socket 管理工具&&docker运行
circus 是由mozilla 团队开发基于python 以及zeromq 的进程以及socket 管理的工具,类似supervisord 但是比supervisord 更灵活方便 来自官方的使用比 ...
- 虚拟变量陷阱(Dummy Variable Trap)
虚拟变量陷阱(Dummy Variable Trap):指当原特征有m个类别时,如果将其转换成m个虚拟变量,就会导致变量间出现完全共线性的情况. 假设我们有一个特征“性别”,包含男性和女性两个类别,如 ...
- 61、Spark Streaming:部署、升级和监控应用程序
一.部署应用程序 1.流程 1.有一个集群资源管理器,比如standalone模式下的Spark集群,Yarn模式下的Yarn集群等. 2.打包应用程序为一个jar包. 3.为executor配置充足 ...
- 【UVA11988】破损的键盘
题目链接 维护一个链表,以及当前位置.head.tail的指针,模拟就行了 #include<iostream> #include<cstring> #include<c ...
- 微信小程序与云开发
微信小程序基础概念 小程序云开发的三大基础能力:云数据库.云函数.云存储 Java.NodeJS.JavaScript.HTML5.CSS3.VueJs.ReactJs.前端工程化.前端架构 小程序开 ...