• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >虚拟化 > docker 开源的应用容器引擎

docker 开源的应用容器引擎

作者:网络飞鸥 字体:[增加 减小] 来源:互联网

本文主要包含docker等服务器相关知识,网络飞鸥希望可以进行参考

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,
然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。


===================================================================================
What is docker


1.什么是docker
    Docker是一个基于Go语言的云开源项目。Docker提供高效、敏捷和轻量级的容器方案。Docker主要目标是“Build,Ship and Run Any App,Anywhere”。
    Docker引擎的基础是Linux容器(LXC)技术。在LXC的基础上,Docker进一步优化了容器的使用体验,同时提供了各种容器管理工具(如分发、版本、移植等),让用户无需关注底层的操作。


2.docker的优势
    (1)更快速的交付和部署。
    (2)更高效的资源利用。docker容器的运行不需要额外的虚拟化管理程序(VMM),它是内核级的虚拟化,可以实现更高的性能,同时对资源的 额外需求很低。
    (3)更轻松的迁移和扩展。docker容器几乎可以在任何平台上运行。
    (4)更简单的更新管理。使用dockerfile,只需要小小的配置修改,就可以替代以往大量的更新工作,并且所有的修改都是增强进行的。


3.docker与虚拟机的比较
    (1)docker容器很快,启动和停止可以在秒级别完成。
    (2)docker容器对系统的资源需求很少,一台主机上可以同时运行数千个docker容器。
    (3)docker通过类似git的操作来方便用户获取、分发、更新应用镜像,指令简单易学,学习成本低。
    (4)docker通过dockerfile配置文件来支持灵活的自动化创建和部署机制,提供了工作效率。

===================================================================================

docker三大核心概念:镜像、容器、仓库




1.docker镜像(image)
    镜像是创建docker容器的基础,docker镜像类似于虚拟机镜像,可以将它理解为一个面向docker引擎的只读模块,包含文件系统。
    创建镜像有三种方法:
    (1)基于已有镜像的容器创建。主要是利用docker commit命令。
    (2)基于本地模板导入。推荐利用OpenVZ提供的模板来创建。
    (3)基于dockerfile创建。首先按照dockerfile的格式,编写好dockerfile文件,之后通过docker build命令来创建镜像。 docker build会读取制定的dockerfile,由docker服务器来创建镜像。


2.docker容器(container)
    容器是从镜像创建的应用运行实例,容器之间是相互隔离、互不可见的。可以把容器看做一个简易版的linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在这个环境上的应用打包而成的应用盒子。
    镜像自身是自读的,容器从镜像启动的时候,docker会在镜像的最上层创建一个可写文件层,镜像本身保持不变。
    可以利用docker create命令创建一个容器,创建后的的容器处于停止状态,可以使用docker start命令来启动它。也可以直接李东docker run命令来直接从镜像启动运行一个容器。docker run = docker creat + docker start。
     当利用docker run创建并启动一个容器时,docker在后台的标准操作包括:
    (1)检查本地是否存在指定的镜像,不存在就从公有仓库下载。
    (2)利用镜像创建并启动一个容器。
    (3)分配一个文件系统,并在只读的镜像层外面挂载一层可读写层。
    (4)从宿主机配置的网桥接口中桥接一个虚拟的接口到容器中。
    (5)从地址池中配置一个IP地址给容器。
    (6)执行用户指定的应用程序。
    (7)执行完毕后容器终止。


3.docker仓库(Repository)
    仓库是存放docker镜像的地方。仓库和注册服务器(Registry)还是有区别的。注册服务器是存放仓库的地方,在其中存放了很多仓库,每个仓库存放一类镜像文件。
    仓库分为公有仓库和私有仓库,DockerHub是目前最大的公有仓库。可以通过docker push/pull命令从仓库中上传和下载镜像,docker search命令来搜索镜像。




===================================================================================


Docker Hub最受欢迎的10个镜像


排名最高的10个官方库


Rank Repository Stars
1 Ubuntu 2,007
2 Centos 1,164
3 Nginx 1,163
4 Redis 957
5 Node 891
6 Postgres 889
7 Mysql 885
8 Mongo 796
9 Debian 573
10 Jenkins 508

===================================================================================


什么是容器云




容器为用户打开了一个通往新世界的大门,但是真正进入到容器世界之后,却会发现新的生态系统如此庞大,在生产环境中,不论是个人还是企业都会提出更复杂的需要,我们需要跨主机的容器协同工作,需要支持各种类型的工作负载,需要多人协作持续集成,需要持续的交付平台。这样,容器相关的网络、存储、高可用性就不得不面对。这就必然的从容器走向了 容器云。


        容器云以容器为资源分割和调度的基本单位,封装整个软件的运行时环境,为开发者和系统管理者提供用于构建、发布和运行分布式应用的平台。 
        容器云最直观的形态就是一个颇具规模的容器集群,它按照功能或依赖敏感性划分成组,不同容器组之间完全隔离,组内容器运行一定程度的共享。容器之间不再简单的依靠docker --link这类的原生命令进行组织,而是借助全局网络管理组件来进行统一管理。容器云的用户也不需要再直接面对docker api,而是借助某种控制器来完成用户操作到docker容器之间的调用转译,从而提供更加友好的UI。


        当容器云专注于资源共享与隔离,容器编排与部署时,她更接近传统的Iaas,当容器云渗透到应用支持与运行时环境时,它更接近与传统的Paas。








 

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

相关文章

  • 普通人如何在区块链行业赚钱
  • 详解Docker下使用Elasticsearch可视化Kibana
  • 在VMware虚拟机下安装Linux的图文教程(高级安装)
  • Docker安装及基本使用方法详细介绍
  • 详解VMware12使用三台虚拟机Ubuntu16.04系统搭建hadoop-2.7.1+hbase-1.2.4(完全分布式)
  • 详解Docker Registry之删除镜像、垃圾回收
  • windows中VirtualBox如何调整扩大VMDK格式的磁盘空间
  • Docker构建ELK Docker集群日志收集系统
  • Docker-compose的安装和设定详细步骤
  • Docker容器中文乱码(修改docker容器编码格式)的解决方案

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • VMware View虚拟桌面“黑屏”解决方案
    • Docker 常用命令整理并介绍
    • 使用Docker安装phabricator的配置和使用方法
    • docker registry安装简单命令实现
    • XenServer 详细介绍与 虚拟化系列-Citrix (XenServer 6.1) 安装与配置
    • 详解nodejs之创建最小docker镜像
    • docker 启动具有多个网络接口的容器的方法示例
    • 存储虚拟化与服务器虚拟化相辅相成
    • Apache Phoenix JDBC 驱动和Spring JDBCTemplate的集成,jdbcjdbctemplate
    • KVM虚拟机技术学习总结

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有