首页 » 问答 » docker(docker 创建容器)

docker(docker 创建容器)

admin 2023-05-18 0

扫一扫用手机浏览

文章目录 [+]

本文目录一览:

docker怎么读

docker,英 [ˈdɒkə(r)]   美 [ˈdɑːkər]  。

n.码头工人。

复数: dockers。

例句:

At the end of the second world war he was working as a docker

第二次世界大战结束时,他是一名码头工人。

Some claimed that the docker's union fronted for the smuggling ring. 

某些人声称码头工人族哪宴工会是走私集团的掩护所。

The seamen went on strike in sympathy with the dockers.

海员举行罢工,以表示对码头工人的支持。

On September 18 the dockers again came out on strike.

9月18日,码头工人再次举行罢兆银工。

With the help of the Chinese dockers, the foreign seaman got back the watch he had lost.

在中国码头工人的帮助下缓盯,那个外国海员找回了他丢失的手表。

什么是Docker

docker是一个开源项目,诞生于2013年初嫌昌早,最初是dotCloud公司内部的一个业余项目。它基于Google公司推出的GO语言实现,项目后来加入了Linux基金会,芹雀遵从apache2.0协议,项目代码在GitHub上进行维护。

docker自开源后受到广泛的关注和讨论,以至于dotcloud公司后来都改名为docker

lnc。Redhat已经在其rhel6.5中集中支持docker,Google也在其PaaS产品中广泛应用。

docker项目的目标是实现轻量级的操作系统虚拟化解决迅亏方案,docker的基础是Linux容器等技术。

Docker是什么?

Docker是世界领先的软件容器平台。Docker使用Google公司推出的Go语言源晌进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。 由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器,但docker本身并不是容器,它是创建容器的工具,是应用容器引擎。

Docke最初实现是基于LXC。LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpace。容器有效地将由单个操作系统管理的资源划分到孤立的组中,以更好地在孤立的组之间平衡有冲突的资源使用需求。

docker并不是LXC替代品,docker底层使用了LXC来实现,LXC将linux进程沙盒化,使得进程之间相互隔离,并且能够课哦内阁制各进程的资源分配。在LXC的基础之上,docker提供了一系列更强大的功能。

Docker能够自动执行重复性任务,例如搭建和配置开发环境,从而解放了开发人员以便他们专注在真正重要的事情上:构建杰出的软件。

用户可以方便地创建和使用容器,把自己的应用放入容器。容器还可以进行版本管理、复制、分享、修改,就像管理普通的代码一样。

docker的三个概念:

镜像(Image):类似于虚拟机中的镜像,是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个Ubuntu镜像就是一个包含Ubuntu操作系统环境的模板雹含锋,同理在该镜像上装上Apache软件,就可以称为Apache镜像。

容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的Linux系统环境(包括root权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、老悔启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker在镜像的上层创建一个可写层,镜像本身不变。

仓库(Repository):类似于代码仓库,这里是镜像仓库,是Docker用来集中存放镜像文件的地方。注意与注册服务器(Registry)的区别:注册服务器是存放仓库的地方,一般会有多个仓库;而仓库是存放镜像的地方,一般每个仓库存放一类镜像,每个镜像利用tag进行区分,比如Ubuntu仓库存放有多个版本(12.04、14.04等)的Ubuntu镜像。

docker的用途:

官方给的是bulid ship run,就是编译、装载、运行。就是实现了应用的封装、部署、运行的生命周期管理只要在glibc的环境下,都可以运行。

谐云自主研发的容器云平台,是基于Docker和Kubernetes技术构建的一套完整IT标准化和自动化框架,以“面向终态、优化IT资源”为目标的新一代PaaS平台,能够提高企业的IT管理能力,在降低运营成本和风险的同时,获得更高的运维效率,保障业务稳定运行和高效迭代。

什么是docker?

一、什么是Docker:

Docker容器本质上是宿主机上进程,三个特点:

1.通过namespace实现了资源隔离;完成一个容器需要6项目隔离:

  namespace        系统调用参数              隔离内容

  UTS              CLONE_NEWUTS              主机名与域名

  IPC              CLONE_NEWIPC              信号量,消息队列和共享内容

  PID              CLONE_NEWPID         蠢改     进程编号

  Network          CLONE_NEWNET              网络设备/网络栈/端竖销口等

  Mount            CLONE_NEWNS              挂载点(文件系统)

  User              CLONE_NEWUSER            用户和用户组

  Linux实现namespace的目的就是线下轻量化虚拟化服务。

2.通过cgroups实现资源限制;

  cgroups是Linux内核提供的一种机制,这种机制可以根据需求把一系列系统任务及其子任务整合或者分隔到按资源划分登记的不同组内,从而为系统资源管理提供一个统一的框架。

  通俗的地讲,cgroups可以限制,记录任务组所使用的物理资源(包括CPU,Memory,IO等)为容器实现虚拟化提供基本保证,是构建Docker等一系列虚拟化管理工具的基石。

  本质上来说,cgroups是内核附加在程序上的一系列钩子(hook),通过程序运行时对资源调度触发相应的钩子以达到资源追踪和限制的目的。

3.通过写时复制机制(copy-on-write)实现了高效的文件操作。

二、Docker架构:

Docker Daemon作用:

Docker Daemon是Docker最核心的后台进程,它负责响应来自Docker Client的请求,然后将这个请求翻译成系统调度完成容器的管理操作。该经常会在后台启动一个API Server,负责接收由Docker client发送的请求;接收到的请求将通过Docker daemon分发调度,再有具体的函数来执行请求。

Docker client:

Docker client是一个泛称,用来向Docker daemon发送请求,,执行带纤判相应的容器管理操作。它既可以是命令行工具docker,也可以是任何遵循了Docker API的客户端。

libcontainer分为三大块内容:

(1)容器的创建以及初始化;

(2)容器生命周期管理;

(3)进展管理,调用方为Docker的execdriver。

标签:

相关文章

  • 暂无相关推荐