docker入门-docker应用场景和优势

一、什么是docker

Docker是一个使用 Go 语言开发的,并且开源的应用容器引擎,基于LXC(Linux Container)内核虚拟化技术实现,提供一系列更强的功能,比如镜像、Dockerfile等;

Docker理念是将应用及依赖包打包到一个可移植的容器中,可发布到任意Linux发行版的Docker引擎上,使用沙箱机制运行程序,程序之间相互隔离;

Docker采用C/S架构,Dcoker daemon作为服务端接受来自客户端请求,并处理这些请求,比如创建、运行容器等;客户端为用户提供一系列指令与Docker Daemon交互;

二、Docker 优点与虚拟机的区别

1、容器共享宿主机内核,系统级虚拟化,占用资源少。docker有着比虚拟机更少的抽象层,由于docker不需要Hypervisor实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源,因此,在CPU,内存利用率上,docker将会在效率上更有优势;

2、启动docker的系统代价比启动一台虚拟机的代价要低得多;无论是从启动时间还是从启动资源消耗的角度来说,docker直接利用宿主机的系统内核,避免了虚拟机启动时所需要的系统引导时间和操作系统运行的资源消耗,利用docker能在几秒钟之内启动大量的容器,这是虚拟机无法办到的,快速启动,低资源消耗的优点使得docker在弹性云平台和自动运维系统方面有着很好的应用前景。

4、docker由于与虚拟机共享内核和操作系统等资源,属于进程级别隔离(namespace和Cgroups)。而虚拟机会通过Hypervisor虚拟对应的操作系统和硬件,属于系统级别隔离。由于共享宿主机内核,只是进程级隔离,因此隔离性和稳定性不如虚拟机,容器具有一定权限访问宿主机内核,存在一定安全隐患。

5、资源给方面不如虚拟机,docker是利用cgroup实现资源隔离的,只能限制资源消耗的最大值,而不能隔绝其他应用程序占用自己的资源;资源给方面不如虚拟机,docker是利用cgroup实现资源隔离的,只能限制资源消耗的最大值,而不能隔绝其他应用程序占用自己的资源;

三、docker 安装

1、配置加速镜像源:
[[email protected] ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install epel-release
yum install container-selinux

yum remove docker docker-common docker-selinux docker-engine -y

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast

2、安装docker

yum install docker-ce-17.06.2.ce-1.el7.centos --需要限定版本要不可能安装报错

原文地址:https://www.cnblogs.com/xiajq/p/11185048.html

时间: 2024-08-28 11:01:32

docker入门-docker应用场景和优势的相关文章

Docker入门-docker运行springboot应用(二)

环境准备 jdk8 安装docker 镜像加速器配置 docker私有仓库 springboot工程的jar包 docker部署项目 dockfile Dockfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令.Docker程序将这些Dockerfile指令翻译真正的Linux命令.Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile.Docker程序将读取Dock

.NET Core + docker入门

下载安装docker docker客户端,今天vpn小水管实在是受不了,于是找了国内的下载地址 配置docker加速器 参考博文Docker for windows10 配置阿里云镜像 docker入门 docker入门文档参考 .NET Core + docker 快速上手 详细文档

Spring Boot教程34——Docker入门

Spring Data介绍 Spring Data项目是Spring用来解决数据访问问题的一揽子解决方案.Spring Data包含了大量关系型数据库及非关系型数据库的数据访问解决方案.Spring Data使我们可以快速且简单地使用普通的数据访问技术及新的数据访问技术. Spring Data包含的子项目如下: Spring Data JPA org.springframework.data spring-data-jpa 1.8.1.RELEASE Spring Data MongoDB o

Docker(一):Docker入门教程

如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如今在微服务架构越来越流行的情况下,微服务+Docker的完美组合,更加方便微服务架构运维部署落地. 本文详细解释介绍Docker入门相关内容,后期重点关注Docker在微服务体系中的使用.在了解Docker之前我们先考虑几个问题:1.Docker是什么?2.为什么要使用Docker,它有什么优势?带

Docker入门教程(一)介绍

http://dockone.io/article/101 Docker入门教程(一)介绍 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第一篇,介绍了Docker的基础概念以及Docker的安装. Docker是一个新的容器化的技术,它轻巧,且易移植,号称“build once, configure once and run anywhere(译者注:这个就不翻译了,翻译出来味道就没了)”.本文是Flux7的Docker系列教程的第一部分.请和这

【实战】Docker 入门实战一

Docker是什么 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低 从这个解释我们不知道大家有没有想到一个优点类似的东西,没错就是 Vagrant :  vagrant打造跨平台可移动的开发环境   ,那么

Docket学习--Docker入门

什么是Docker? Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal.OpenStack 集群和其他的基础应用平台. Docker通常用于如下场景: web应用的自动化打包和发布: 自动化测试和持续集成.发布: 在服务型环境中部署和调整数据库或其他的后台应用: 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的P

Docker 入门实践

欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:张戈 导语 本文从新手视角记录了一个实际的Dokcer应用场景从创建.上传直到部署的详细过程,并简单的介绍了腾讯云容器服务的使用方法.通过Docker快速拉起一个定制服务,极大的简化了部署,加快了业务部署节奏,并降低了运维成本. ------ 人生苦短,快用Docker. 一.实践背景 初次接触Docker,按照我的学习习惯,先设计了这样一个场景case:假设有一个小型网站,想使用Nginx反向代理方案,能够在国内外快速搭建多个

Docker学习总结(11)——八个Docker的真实应用场景

[编者的话]Flux 7介绍了常用的8个Docker的真实使用场景,分别是简化配置.代码流水线管理.提高开发效率.隔离应用.整合服务器.调试能力.多租户环境.快速部署.我们一直在谈Docker,Docker怎么使用,在怎么样的场合下使用?也许本文可以帮到你.有需要交流的地方,可以通过评论与我们交流. 几周前我们参加了DockerCon ,Dockercon是首个以Docker为中心的技术大会.它面向开发者以及对在Docker开放平台上构建.交付.运行分布式应用感兴趣的从业者,不论这些开放平台是运