docker(一):docker是什么?
认识容器:docker入门篇
docker是什么?
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。(摘自百度百科)
这里我总结归纳下重点是:
打包成容器。
打包 成 容器
众所周知,一个Java 应用 war包或者jar包 启动成功,有能够对外提供服务的能力(能正常访问页面,做操作),需要部署到一台有tomcat的linux环境中。
没有容器技术前的上线流程通常出现这样的或那样的问题,比如:
1.开发环境没错,测试环境报错---->排查后发现是启动脚本里,jdk版本不对
2.测试环境没错,生产环境报错 -->排查发现是tomcat版本和jdk不匹配。
然后:
开发、运维、测试同事都很头痛,都觉得自己没问题,
总结会的时候还要扣绩效,
虽说不容易出事情,单出了事情 很影响新产品上线效率。
有个 打包 机制就不一样了,他会很强,强到可以把我这个应用运行时(能正常对外提供服务),需要的 一切 ,包括tomcat,jdk,甚至是linux文件都 打包 到一起。

这个打出来的包叫做镜像。 镜像运行时叫做容器。
可以发现 镜像可以很方便的做迁移,备份,存储,交付。
运行镜像,能对外提供服务能力的镜像运行时,叫做容器。

这样,打出来的包,优点就出来了
1.环境的强一致性。docker镜像提供了除内核外完成的运行时环境,保证其他使用人员,能完整复现应用运行时环境。不会出现“这应用在xxx环境没问题”这种情况。
2.迁移方便,持续交付和部署。一次打包,到处运行。
容器和虚拟机的区别

App在虚拟机中运行时,调用需要经过虚拟化软件的处理,才能调用到真正的宿主机操作系统。
在容器中运行,直接可以使用宿主机操作系统,省事省力,可喜可贺。
那么容器技术的又有了优点:
敏捷和高性能:直接调用宿主机操作系统,不需要经过虚拟化软件的处理。
白话总结:
docker是一种技术,能使得应用在任何环境都能用的打包技术。打包出的东西叫镜像。镜像运行时(有对外提供服务能力)叫容器。
docker && kubernetes 入门介绍pdf,请参看:
https://github.com/haoprogrammer/kubernetes-study/tree/master/pdf/umf
欢迎转载,转载请注明出处,感谢您的阅读。
docker(一):docker是什么?的更多相关文章
- [经验交流] docker in docker 的变通实现方法
最近在做CI持续集成环境的容器化,其中一个工作是:在容器中构建容器镜像. 对于这个需求,网上有一些 Docker in Docker 的方法,具体需要修改宿主机的配置.这种方式在单机环境下.对安全要求 ...
- 【Docker】docker /var/lib/docker/aufs/mnt 目录满了,全是垃圾数据,咋搞?
命令: #!/bin/bash # 推荐方式 docker volume ls -f dangling=true | awk '{ print $2 }' | xargs docker volume ...
- jenkins和docker 使用docker作为slave
使用docker作为jenkins slave. 文章来自:http://www.ciandcd.com文中的代码来自可以从github下载: https://github.com/ciandcd 参 ...
- .NET遇上Docker - 使用Docker Compose组织Ngnix和.NETCore运行
本文工具准备: Docker for Windows Visual Studio 2015 与 Visual Studio Tools for Docker 或 Visual Studio 2017 ...
- jenkins+docker 持续构建非docker in docker jenkins docker svn maven
工欲善其事必先利其器,为了解脱程序员的,我们程序员本身发明了很多好用的工具,通过各种工具的组合来达到我们想要的结果 本文采用jenkins docker svn maven作为相关工具,项目sprin ...
- [Docker基础]Docker安装教程
Install Docker Docker支持几乎所有的Linux发行版,也支持Mac和Windows. 各操作系统的安装方法可参考Docker官网. 安装环境 ubuntu 16.04 Docker ...
- 【Docker】Docker概述
[Docker] Docker可以说是近几年非常热门的技术之一了.不管是别人敦促我还是从自己的想法来说,都觉得Docker这玩意儿肯定是要好好学习一下的,无奈没啥时间专门播出来给Docker,一直以来 ...
- ubuntu 18.04安装docker以及docker内配置neo4j
如题 切换到root用户下 apt install docker.io 等啊等,很快,就好了.. 如图 即可使用 如果出现Cannot connect to the Docker daemon at ...
- jenkins+docker 持续构建非docker in docker
工欲善其事必先利其器,为了解脱程序员的,我们程序员本身发明了很多好用的工具,通过各种工具的组合来达到我们想要的结果 本文采用jenkins docker svn maven作为相关工具,项目sprin ...
- 安装Docker时错误提示 "could not change group /var/run/docker.sock to docker: group docker not found"的解决方案
安装Dock服务,主要命令是 yum install docker. 但是在启动的时候报错:warning msg="could not change group /var/run/doc ...
随机推荐
- CDR服装设计-用CorelDRAW排钻如何把圈摆均匀
服装设计一直都是一个很火热的行业,也是一个比较高端的行业,随着时代的步伐,以前的人都是用手绘的方式来设计服装,现在不一样了,电脑可以说普及到了每一个家庭,让软件以更快的速度,更准确的数据来设计服装中的 ...
- 浅谈SOCKS5代理与HTTP代理的应用区别
[1]什么是SOCKS5协议. SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递.SOCKS是"Sockets”的缩写. 当防火墙后的客户端要访问外部的服务器时,就 ...
- pymysql连接数据库
一.pymysql的相关参数及方法 1.pymysql.connect()参数说明:(连接数据库时需要添加的参数) 参数 类型 描述 host str MySQL服务器地址,IP地址或域名 port ...
- java aop面向切面编程
最近一直在学java的spring boot,一直没有弄明白aop面向切面编程是什么意思.看到一篇文章写得很清楚,终于弄明白了,原来跟python的装饰器一样的效果.http://www.cnblog ...
- TensorFlow 学习笔记(2)----placeholder的使用
此系列将会每日持续更新,欢迎关注 在TensorFlow中输入值的方式是通过placeholder来实现 例如:做两个数的乘法时,是先准备好两个place, 再将输出值定义成两数的乘法 最后利用ses ...
- LINUX应用开发(面试)
LINUX应用开发工程师职位 本试卷从考试酷examcoo网站导出,文件格式为mht,请用WORD/WPS打开,并另存为doc/docx格式后再使用 说明:应用开发可考察的点非常多,关键的还是C语言和 ...
- Python 5 运算符
数学运算符: + 加 1 + 1 = 2 - 减 2 - 1 = 1 × 乘 2 × 2 = 4 / 除 3 / 2 = 1.5 不同版本可能显示小数位数不同 ...
- hdu_1041_Computer Transformation_201311051648
Computer Transformation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/ ...
- codevs 1700 施工方案第二季
1700 施工方案第二季 2012年市队选拔赛北京 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description c国边防 ...
- hiho challenge 15 C题
DP题.状态很容易设,dp[u][0]表示u点子树解决,dp[u][1]表示剩一条链,dp[u][2]表示邻边全炸. 转移有点难,看代码解释: #include <iostream> #i ...