一、Docker的性质

  Docker的组成其实很简单。你需要搭建registry,专属于你自己的私有仓库,然后就是docker的镜像和docker的容器。Docker的镜像,就类似与windos的系统盘,你只有有了它,你才能够跑起来容器。 
   
  Docker的容器,很多人下载一个镜像,然后跑起来一个容器,就想进容器里看一看究竟。各位看官,很明确的告诉你们,你这个想法本身就是错误的。你跑起来一个容器,容器的进程是直接运行在宿主机内核上的,和你在宿主机上跑一个进程是一样样的,只是容器的userland不同,容器的userland由容器的镜像提供 
   
  假设宿主机是centos的系统,但是你起了一个ubuntu的容器。ubuntu容器内部的进程调用的是centos的内核,而不会去调用ubuntu。而这点就和虚拟机有了本质的区别,虚拟机是虚拟环境,在现有的系统上去虚拟一个物理设备,再去虚拟一个内核,进程是跑在虚拟机的系统上的,虚拟机的进程和你宿主机是没有任何联系的。 
   
  所以你也可以这样理解,docker容器,其实就是一个进程,既然他只是一个进程,不是操作系统,那么你为什么要不断的去进入容器? 
docker不是虚拟机,不是!!!

二、Docker的安装

  然后,不得不吐槽一下我家胖胖,不要再去误人子弟了。 
Docker版本现在1.12的不错,因为这个版本融合了docker swarm。完美的融合,自身支持负载均衡,并且可以说做到了高可用。 
系统要求:

Ubuntu 14.04、16.04
Debian 7.7、8.0
CentOS 7.X
Fedora 20、21、22
OracleLinux 6、7

下载的方式

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -

如果你觉得你足够NB,那么 
## 测试版

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/test/internet | sh
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/test/intranet | sh

## 实验版

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/experimental/internet | sh
curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/experimental/intranet | sh

注意

1、因为测试版、实验版的版本号格式不统一,所以通过制定版本的方式安装可能存在问题。

Ubuntu的测试版、实验版的版本号格式示例: 1.12.0~rc1、1.12.0~rc2
CentOS的测试版、实验版的版本号格式示例: 1.11.0、1.12.0

2、CentOS系统上会为正式版测试版实验版分别添加数据源描述文件。如果你从正式版想要切换到测试版、实验版的话,请删除数据源描述文件。 
描述文件分别为 /etc/yum.repos.d/docker-main.repo、/etc/yum.repos.d/docker-test.repo、/etc/yum.repos.d/docker-experimental.repo

3、FAQ 
帮助文件地址 
http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/help

yum update、apt-get update时,报出 404 Not Found 的错误,源站路径更新导致镜像源的路径不正确,解决办法:

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/resume | sh -

三、Docker 配置文件

  每个软件都是有配置文件的,docker也有,但是在不同的系统上,它的配置文件位置会有一点点小区别。最近两年处于Upstart/SysinitV 到systemd 的过渡期,所以配置服务的方式对于不同的系统是不一样的,要看自己使用的是什么操作系统,以及什么版本。

  对于 Upstart 的系统(Ubuntu 14.10或以前的版本,Debian 7或以前的版本),配置文件可能在

Ubuntu/Debian: /etc/default/docker
CentOS/RHEL: /etc/sysconfig/docker

  而对于 systemd的系统(Ubuntu 15.04及以后的版本,Debian 8及以后的版本,CentOS/RHEL 7),配置文件则一般在 /etc/systemd/system/下的 docker.service 中,如:

/etc/systemd/system/multi-user.target.wants/docker.service

  具体位置,不同的系统位置不同,而且配置文件的格式也不同。(我用的是Centos7+的系统)

Docker:Docker 性质及版本选择 [三]的更多相关文章

  1. Docker MySql 查看版本的三种方法

    目录 Docker MySql 查看版本的三种方法 1.mysql -V命令查看版本 2.status命令查看版本 3.version命令查看版本 Docker MySql 查看版本的三种方法 1.m ...

  2. Docker从入门到实战(三)

    Docker从入门到实战(三) 一:安装Docker 1. linux系统脚本安装 Docker基于linux容器技术,面向服务器端,Docker只能安装运行在64位计算机上(社区有对32位的支持), ...

  3. Docker 从入门到放弃(三)镜像使用

    当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载. 下面我们来学习: 1.管理和使用本地 Docker ...

  4. 容器学习笔记之CentOS7安装Docker(安装指定版本的Docker,加速,卸载)

    0x00 概述 Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE. 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过 ...

  5. (转) Docker EE/Docker CE简介与版本规划

    随着Docker的不断流行与发展,docker公司(或称为组织)也开启了商业化之路,Docker 从 17.03版本之后分为 CE(Community Edition) 和 EE(Enterprise ...

  6. Docker EE/Docker CE简介与版本规划

    随着Docker的不断流行与发展,docker公司(或称为组织)也开启了商业化之路,Docker 从 17.03版本之后分为 CE(Community Edition) 和 EE(Enterprise ...

  7. centos 7.4 安装docker 19.03.6 版本。附带离线安装包

    说明: 1.此环境为未安装过docker服务的环境, 如果已经安装,则自行卸载. 2.以下环境中上传的包及离线yum源默认为/home目录下,如无特殊说明,以此目录为准 步骤一:下载docker离线安 ...

  8. 基于Docker部署4.2 版本的zabbix监控平台

    准备工作 两台VMware 虚拟机 一台充当zabbix server(安装docker)ip:192.168.73.133 一台充当zabbix agent(安装docker)ip:192.168. ...

  9. docker 1.12.3版本搭建私有仓库,上传镜像报错:server gave HTTP response to HTTPS client”

    系统环境:centos7 docker版本: 1.12.3(注意版本,可能存在不同版本设置不同的情况) docker registry版本:2.4.1 问题: 成功安装docker registry, ...

随机推荐

  1. 自动化测试之路3-selenium3+python3环境搭建

    1.首先安装火狐浏览器  有单独文章分享怎么安装 2.搭建python环境 安装python,安装的时候把path选好,就不用自己在配置,安装方法有单独文档分享 安装好以后cmd打开输入python查 ...

  2. 虚拟机硬盘vmdk压缩瘦身并挂载到VirtualBox

    这个问题其实困扰了挺久的,一直没闲情去解决,网上搜索过很多压缩方法感觉都太麻烦太复杂,因最近在windows上搞docker就一并解决了. 压缩vmdk 首先下载DiskGenius,这工具很牛X,相 ...

  3. 我的第一个python web开发框架(23)——代码版本控制管理与接口文档

    书接上一回,小白和老菜聊到代码的版本控制和接口文档 小白:为什么要做版本控制,我不弄版本控制不也完成了项目了吗?要做版本控制不是很麻烦,又要安装服务又要提交代码,代码又不是多人用开发,还要写文档... ...

  4. asp.net 客户端请求到响应的整个过程

    出处:https://www.cnblogs.com/Joans/archive/2012/02/08/2342887.html 疑惑?从客户端发出一个请求,请求到达服务端如何和IIS关联起来?IIS ...

  5. DeveloperGuide Hive UDF

    Creating Custom UDFs First, you need to create a new class that extends UDF, with one or more method ...

  6. 无post按钮提交表单

    <form id="form1" name="form" action="url" method="GET"> ...

  7. P1744 采购特价商品 题解(讲解图论)

    图论的超级初级题目(模板题) 最短路径的模板题 图是啥?(白纸上的符号?) 对于一个拥有n个顶点的无向连通图,它的边数一定多于n-1条.若从中选择n-1条边,使得无向图仍然连通,则由n个顶点及这 n- ...

  8. UML 教程

    UML 教程 关键词:部署图, 组件图, 包图, 类图, 复合结构图, 对象图, 活动图, 状态机图, 用例图, 通信图, 交互概述图, 时序图, 时间图 简介 部署图 组件图 包图 类图 复合结构图 ...

  9. SQL的一些基础查询语法

     基础.限定.模糊查询     关键字都是大写. 使用 BETWEENN AND 的时候小的数字或者日期放到  AND(并且)  的面前,大的一个放到AND 后面.   数据操纵语言SQL分类(DML ...

  10. 父进程结束,其子进程不会结束,会挂到init进程下

    结论:一个父进程产生子进程,父进程结束(kill),子进程不会结束,子进程被init进程托管 下面是过程: d.sh脚本是一个ping命令,执行d.sh 目前,103310 进程为父进程,103344 ...