文档章节

Docker学习一 基础知识

dkpenl
 dkpenl
发布于 2017/08/29 10:07
字数 841
阅读 4
收藏 0

       什么是docker,为什么要用docker,这些东西网上一大堆这里就不再重复了,请不清楚的同学自己上网先了解一下这些知识,我们直接从docker三个最重要的概念讲起:镜像、容器、仓库。

 一、docker镜像:

     Docker镜像就是一个只读的模板,通常情况下你可以把镜像想象成一个装有操作系统和一些常用工具的模板。例如:一个镜像可以包含一个完整的centos操作系统环境,里面仅安装了tomcat或用户需要的其它应用程序,我们可以通过这个镜像创建一个容器,你在使用这个容器的时候,和我们使用一个虚拟机在感觉上没有多大的区别(当然虚拟机和容器技术实现是完全不一样的)。

二、容器:

    容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全
的平台。可以把容器看做是一个简易版的Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。

三、容器和镜像的关系:

       打个不是太准确的比方,镜像和容器类似于我们编程中的类和实例,镜像是一个我们定义好的类,要使用的时候,我们需要new创建一个实例,而我们基于镜像模板创建一个容器,容器就是我们这个镜像的一个 实例。同样的,一个类可以创建多个实例,一个镜像也可以创建多个容器。

     镜像可以用来创建    Docker    容器。

    容器是从镜像创建的运行实例。

四、仓库:

        仓库是集中存放镜像文件的场所。有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的
标签(tag)。

       仓库分为公开仓库(Public)和私有仓库(Private)两种形式。

      最大的公开仓库是    Docker    Hub,存放了数量庞大的镜像供用户下载。    国内的公开仓库包括    Docker    Pool等,可以提供大陆用户更稳定快速的访问。

       当然,用户也可以在本地网络内创建一个私有仓库。当用户创建了自己的镜像之后就可以使用        push  命令将它上传到公有或者私有仓库,这样下次在另外一台机器上使用这个镜像时候,只需要从仓库上  pull  下来就可以了。

       再打一个比方:Docker 仓库的概念跟 Git 类似,注册服务器可以理解为 GitHub  这样的托管服务。

      docker最基本的三个概念就是镜像、容器、仓库,我们有了一个较抽象的概念以后可能有点晕,没关系,后续我们通过一步一步具体的操作来进一步理解这些概念。下一节,我们来具体安装一个docker,让它跑起来看看。

 

© 著作权归作者所有

共有 人打赏支持
dkpenl
粉丝 1
博文 11
码字总数 9873
作品 0
成都
程序员
[ Linux运维学习 ] 路径及实战项目合集

我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构、提升部署效率、优化资源利用率,确保服务可以7*24H不间断地为用户提供服...

实验楼
2017/11/15
0
0
swoft| 源码解读系列一: 好难! swoft demo 都跑不起来怎么破? docker 了解一下呗~

date: 2018-8-01 14:22:17 title: swoft| 源码解读系列一: 好难! swoft demo 都跑不起来怎么破? docker 了解一下呗~ description: 阅读 sowft 框架源码, swoft 第一步, 搞定环境 小伙伴刚接触...

daydaygo
08/10
0
0
挨踢部落故事汇(15):不断拓新成为科技大潮中的弄潮儿

周佳是个资深宅男,平时有时间主要是宅。比较喜欢研究心理学方面的书籍,平时喜欢看书,给大家安利一本书《超越自卑》,个体心理学大师级著作。兴致来了能玩一天游戏,经常看电影。在工作方面...

51CTO编辑部
2017/06/12
0
0
python 爬虫 极客学院

coding: utf-8import requestsimport reimport sys reload(sys)sys.setdefaultencoding("utf-8") class Spider(object): self.urls = [] self.page = '0' def getPage(self, urlbase='http:/......

hyhlinux
2016/06/11
72
0
福利丨对于Docker改名Moby一事,你怎么看?

说到近日技术圈备受瞩目的话题,“Docker改名Moby”算是其中一个大事件。对于Moby项目的切出,有的人为此拍手称快,有的人却不尽苟同,业界可谓众说纷纭。但是,厂商究竟因何欣喜?用户们又都...

DBAplus社群
2017/05/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

RabbitMQ在CentOS环境安装

1.废话不多说准备一台虚拟机,系统为centos,我这里使用的系统版本如下图所示:

凌晨一点
54分钟前
0
0
线程池相关

在java.util.concurrent包下,提供了一系列与线程池相关的类。 使用线程池的好处 降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗; 提高响应速度。当任务到达时,任务...

edwardGe
56分钟前
0
0
学习大数据这三个关键技术是一定要掌握!

大数据时代全面来临,大数据、人工智能等技术引领科技创新潮流,获得国家政策大力支持,前景广阔。学习大数据技术的人自然是络绎不绝, 学习大数据虽然是一个趋势,但也要注意大数据培训课程...

董黎明
今天
0
0
jetbrains 上传代码到github

设置中找github 获取token 验证是否成功 测试git 生成key,一路回车即可 ssh-keygen -t rsa -C “youremail@example.com” 打开pub复制key,需要再次输入一次密码 验证是否成功,输入yes即可...

阿豪boy
今天
0
0
分布式服务框架(拾遗)

前言 现在的大部分工程都已经是基于分布式架构来处理。所以这里对分布式框架做一个简单的总结 常用的RPC框架 RPC框架原理 RPC(Remote Procedure Call,远程过程调用)一般用来实现部署在不同...

kukudeku
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部