Docker主要有三大核心的概念,分别为镜像(Image)、容器(Container)及仓库(Repository)。

一、核心概念

1、Docker镜像

​ Docker镜像其实与虚拟机镜像很类似,我们可以将其理解为面向一个Docker引擎的只读模板,其中包含了文件系统。镜像是创建Docker容器的基础,通过版本管理和增量的文件系统,Docker提供一个简单的机制来创建和更新现有的镜像,当然我们也可以直接下载一个现成的应用镜像来直接使用。

2、Docker容器

​ Docker类似一个轻量级的沙箱,Docker利用容器来运行和隔离不同的应用。容器是从镜像创建的应用运行实例,可以将其启动、开始、停止、删除,容器之间是相互隔离、互不可见的。镜像本身是只读的,容器从镜像启动时,Docker会在镜像的上层创建一个可写层,此时镜像本身依然时保持只读不变的。

3、Docker仓库

​ Docker仓库与代码仓库类似,是Docker镜像集中存放的场所。同时Docker仓库可以分为公开仓库和私有仓库。当前最大的国际公开仓库是Docker Hub,国内也自建了一些比较稳定的仓库。若我们不希望公开自己的镜像,则可以在本地网络创建只可自己访问的私有仓库。

​ 我们创建了自己的镜像之后,就可以使用 push 命令将其上传到仓库中,供下次我们使用,使用 pull 命令将其从仓库拉取出来。

二、安装Docker

1、Ubuntu

1.1、Ubuntu14.04及以上版本

​ 在此版本中,官方已经原生地自带了Docker包,我们可以直接安装。

$ sudo apt-get update
$ sudo apt-get install docker.io
$ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
$ sudo sed -i '$acomplete -F _docker docker' /etc/bash_completion.d/docker.io # 以上步骤即使用系统自带的包来安装Docker,当然也可以使用以下命令来安装最新版本 $ sudo apt-get install apt-transport-https
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36ED7....
$ sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install -y lxc-docker # 安装后,若以后需要更新,则只要执行以下命令
$ sudo apt-get update -y lxc-docker

1.2、Ubuntu14.04以下版本

​ 在低版本中,我首先需要将内核进行更新才可正常安装。

$ sudo apt-get update
$ sudo apt-get install -y linux-image-generic-lts-raring linux-headers-generic-lts-raring
$ sudo reboot # 更新完内核之后,按照14.04版本来安装Docker

2、CentOS

2.1、 CentOS6

$ sudo yum install -y http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
$ sudo yum install -y docker.io

2.2、CentOS7

$ sudo yum install -y docker

3、Windows

​ 下载exe可执行文件,直接安装,关键是有公司服务器是window吗?有,那你们公司厉害了,我服。

4、MacOS

​ 好像也没有听说服务器安装这个操作系统,自己研究去吧。

三、学习Docker环境

​ 自己在VMware虚拟机上安装的是 CentOS7.x 版本。本机电脑为Win10,宿主机和虚拟之间使用NAT网络方式来连接。

二、【Docker笔记】Docker的核心概念及安装的更多相关文章

  1. Docker系列(一)Docker概述,核心概念讲解,安装部署

    部分内容参考链接: Docker实战总结(非常全面,建议收藏) 一. Docker概述 Docker是一个开源的应用容器引擎(基于Go语言开发),让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...

  2. docker的核心概念和安装

    里Dcoker的安装要求 我这里安装的是在vmware下的centos7 64位 并且通过模拟远程连接xshell 我在安装好之后就配置了静态ip,这里我就不多说怎么配置了 具体静态ip配置可以参考 ...

  3. Docker 核心概念、安装、端口映射及常用操作命令,详细到令人发指。

    Docker简介 Docker是开源应用容器引擎,轻量级容器技术. 基于Go语言,并遵循Apache2.0协议开源 Docker可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发 ...

  4. docker笔记--docker 各系统安装

    在线安装 Docker 在 CentOS/RHEL 中安装 Docker 在终端中运行下面的命令安装 Docker. sudo yum install -y yum-utils sudo yum-co ...

  5. K8S学习笔记之Kubernetes核心概念

    0x00  Kubernetes简介 Kubernetes(K8S)是Google开源的容器集群管理系统,其设计源于Google在容器编排方面积累的丰富经验,并结合社区创新的最佳实践. K8S在Doc ...

  6. Docker笔记——Docker安装及制作镜像

    1 Docker安装本文中Docker运行环境为Ubuntu 14.04.1 LTS 3.13.0-32-generic x64参考:https://docs.docker.com/v1.11/eng ...

  7. Maven入门(二)pom.xml和核心概念

    一.pom.xml文件说明 1.pom意思就是project object model. 2.pom.xml包含了项目构建的信息,包括项目的信息.项目的依赖等. 3.pom.xml文件是可以继承的,大 ...

  8. Docker笔记4:在 CentOS 上安装 Docker

    Docker 是一个开源的应用容器引擎,主要有两个分支,一个是社区免费版(Docker CE),一个是企业版(Docker EE). 第1步:系统环境要求 Docker 支持的 CentOS 版本: ...

  9. OCP读书笔记(1) - Oracle核心概念和工具

    ohasdoracle high available service daemon OEMweb -- Database Control资料库 -- sysman Starting Oracle Re ...

随机推荐

  1. 沙雕与大婶 | Mock调你的外部依赖吧

    故事背景: 沙雕在公司负责API项目的开发,很认真负责,经常加班加点赶进度,却常常被老板吐槽说他开发效率太低,他自己也很委屈,因为他所负责的项目常常依赖大量外部系统,他只好等对方开发完才一个个对接,开 ...

  2. node--fs

    1.fs模块内置方法 1)stat 检测是文件还是目录 fs.stat(fileAddress,(err,stats)=>{ //err 出错信息 //stats.isFile() 该东西是文件 ...

  3. 我厌倦了 Redux,那就造个轮子 Rectx:第三集

    仓库:215566435/rectx 前言 麻烦快去我的仓库里面喷: 老子学不动了,求不要更新. 呵呵,你没想到吧,这玩意儿竟然有第三集!我靠,我自己都没想到,让我们悄悄的回顾一下前两集完全没想到,竟 ...

  4. Python爬虫抓取微博评论

    第一步:引入库 import time import base64 import rsa import binascii import requests import re from PIL impo ...

  5. iview的render函数使用

    render渲染函数详解 https://www.cnblogs.com/weichen913/p/9676210.html iview表格的render函数作用是自定义渲染当前列,权限高于key,所 ...

  6. React的组件

    React的组件化思想尤为明显,一切皆组件,觉着比Vue的组件化思想更加凸显. const PacketBG = (props) =>( <div className="pack ...

  7. 安卓 打飞机 app 开发 第一篇

    先上效果图 其实,当时刚买 htc G8 的时候(那时北京的房价还是6千一平),安卓2.1 ,2.3 的时候就已经有安卓方面的开发的兴趣,但后来就没有弄过... today 突然想起来,手机上连个游戏 ...

  8. django 从零开始 5 数据库模型创建

    进入应用项目下的models.py文件 自带一个导入的包 from django.db import models 使用这个包创建models模型 我这是要创建一个图站 ,所以模型设置并不复杂(路径配 ...

  9. 程序员过关斩将-- 喷一喷坑爹的面向UI编程

    摒弃面向UI编程 为何喷起此次话题,因为前不久和我们首席架构师沟通,谈起程序设计问题,一不小心把UI扯进来,更把那些按照UI来编程的后台工程师也扯了进来.今天特意百度了一下(其实程序员应该去googl ...

  10. Simulink仿真入门到精通(二) Simulink模块

    2.1 Simulink模块的组成要素 用户构建系统模型时无需直接面对成千上万行的代码,而是通过模块化图形界面以模块化的方式构建,能够使理解变得容易,让大脑减负.通过层次化模块分布将系统功能模块化,而 ...