一、Docker介绍

1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙箱机制,互相之间不会有任何接口.
2. 启动非常快,秒级实现.
3. 资源利用率很高,一台机器可以跑上千个docker容器.
4. 更快的交付和部署,一次创建和配置后,可以在任意地方运行.
5. 内核级别的虚拟化,不需要额外的hypevisor支持,会有更高的性能和效率.
6. 易迁移,平台依赖性不强.

二、Docker核心概念

1.镜像: 是一个只读的模版,类似于安装系统用到的iso文件,我们通过镜像来完成各种应用的部署.
2.容器: 镜像类似于操作系统,而容器类似于虚拟机本身.它可以被启动、开始、停止、删除等操作. 每个容器都是相互隔离的.
3.仓库: 存放镜像的一个场所,仓库分为公开仓库和私有仓库.

三、Docker安装

1.笔记机器是Centos6.4 x64位, 首先升级系统.
1
2
3
4
5
6
7
8
bash-3.2# yum -y install epel-release
bash-3.2# yum update
bash-3.2# yum -y install docker-io
bash-3.2# /etc/init.d/docker start
bash-3.2# chkconfig --add docker
bash-3.2# chkconfig docker on
bash-3.2# ps aux|grep docker
root     1396    1  0 May20 ?        00:15:31 /usr/bin/docker -d

四、Docker镜像管理

1.下载centos镜像
1
2
3
bash-3.2# docker pull centos
bash-3.2# docker images
centos              latest              2a332da70fd1        2 weeks ago         196.7 MB
2.更改镜像名称
1
2
3
4
5
bash-3.2# docker tag centos:latest 90root:90root
bash-3.2# docker images
centos              latest              2a332da70fd1        2 weeks ago         196.7 MB
90root              90root              2a332da70fd1        2 weeks ago         196.7 MB
###可以看到,其实基于centos:latest拷贝一份镜像. 仔细看发现两者IMAGE ID一样.
3.Docker搜索公有镜像
1
2
3
4
5
6
7
8
bash-3.2# docker search centos
NAME                            DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
centos                          The official build of CentOS.                   2358      [OK]
ansible/centos7-ansible         Ansible on Centos7                              75                   [OK]
jdeathe/centos-ssh              CentOS-6 6.7 x86_64 / CentOS-7 7.2.1511 x8...   25                   [OK]
jdeathe/centos-ssh-apache-php   CentOS-6 6.7 x86_64 / Apache / PHP / PHP M...   17                   [OK]
nimmis/java-centos              This is docker images of CentOS 7 with dif...   12                   [OK]
………………………………………………
4.启动一个容器
1
2
3
4
5
bash-3.2# docker run -it centos /bin/bash
bash-96d50d4ae5e4# exit
##退出容器之后,容器停止
## -i: 让容器的标准输入打开
## -t: 为容器分配一个为终端
5.查看运行的容器
1
2
3
4
bash-3.2# docker ps          #查看正在运行的容器
bash-3.2# docker ps -a       #查看所有容器
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
96d50d4ae5e4        centos              "/bin/bash"         4 minutes ago       Exited (0) 3 minutes ago                       desperate_hopper
6.删除镜像
1
2
3
4
5
6
7
8
9
10
11
bash-3.2# docker images     #查看镜像
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
90root              0617                b14c8813ddbd        3 days ago          513.4 MB
90root              90root              2a332da70fd1        2 weeks ago         196.7 MB
centos              latest              2a332da70fd1        2 weeks ago         196.7 MB
bash-3.2# docker rmi docker rmi 90root:0617     #删除镜像
bash-3.2# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
centos              latest              2a332da70fd1        2 weeks ago         196.7 MB
90root              90root              2a332da70fd1        2 weeks ago         196.7 MB
## 不推荐通过镜像id删除镜像

2. Docker - 安装的更多相关文章

  1. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  2. docker安装

    系统要求:需要一个64位的centos7操作系统和版本3.10或更高版本的Linux内核 开始安装: uname -r   //查看内核版本yum -y update //更新系统更新到最新 #安装d ...

  3. Docker 安装部署

    Docker学习笔记 一.Ubuntu Docker 安装 (1).获取最新版本Docker安装包 lyn@lyn:/data/docker$ sudo wget -qO- https://get.d ...

  4. docker 安装

    Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...

  5. Docker安装及基本使用方法

    Docker安装 CentOS6上安装Docker # yum -y install epel-release # yum -y install docker-io CentOS7上安装Docker ...

  6. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  7. docker安装caffe

    [最近一直想要学习caffe,但是苦苦纠结于环境安装不上,真的是第一步都迈不出去,还好有docker的存在!下面,对本人如何利用docker安装caffe做以简单叙述,不属于教程,只是记录自己都做了什 ...

  8. Docker安装Gitlab

    一.Ubuntu16.4上Docker安装Gitlab 1.安装docker 参见:https://docs.docker.com/engine/installation/linux/ubuntuli ...

  9. 使用docker安装部署Spark集群来训练CNN(含Python实例)

    使用docker安装部署Spark集群来训练CNN(含Python实例) http://blog.csdn.net/cyh_24/article/details/49683221 实验室有4台神服务器 ...

随机推荐

  1. ssh默认端口更改后,如何正常使用git?

    由于安全或者其它原因,我们可能会修改默认的SSH服务端口号,默认情况下,已有的git项目在pull或者push的时候会报错. 现在假设原来的项目的remote设置为git@domain.com:Pro ...

  2. web iis服务器安全性配置实例

    自己不维护服务器,不知道维护服务器的辛苦.刚开始为了嫌麻烦,抱有侥幸心理,一些繁琐的安全设置没有配置,结果服务器连一天都没撑过去.经过10天的反复摸索和努力,现在服务器已经稳定工作一个月了,特此整理本 ...

  3. 与锤子手机HR的对话——创业没有联合创始人,CTO 等高管会把它当做自己的事业吗?

    以下对话,是在被之前的锤子HR磨叽2周约面试折腾的火大的心态下进行…… 这个问题发到知乎,被一群人骂啊……cnblogs都是工程师,估计懂期权参加创业的同学多一些,有空前往知乎声援一下……在这里:ht ...

  4. json 对象 数组

    一.json写法以及获得其数据的方法 var jsons={ name:'wen', age:12, price:'qq' } console.log(typeof jsons);//object c ...

  5. MontageJS:构建现代 Web App 的 HTML5 框架

    MontageJS 可以帮助您构建高可扩展性和可维护性的 HTML5 应用.有了 MontageJS,开发人员可以创建可重用的用户界面组件和模块,组件和控制器之间的绑定属性,并且同步 DOM 查询和更 ...

  6. 怎么把多个GridView和Repeater导入到word或者excel中

    最近开发网上商城有发现我们会涉及到订单打印的问题,本来想到直接显示打印即可但是考虑还得下载到本地,最后只有直接选择控件按流方式输出. 导入到word中代码如下: protected void Butt ...

  7. 一些XMLHttpRequest的例子代码

    以下例子摘录自:javascript权威指南 //异步请求(事件监听请求是否返回) function getText(url,callback){ var request = new XMLHttpR ...

  8. 错误 24 无法嵌入互操作类型“ESRI.ArcGIS.Geometry.PointClass”。请改用适用的接口。 E:\MyGIS\MyGIS\Form1.cs 78 37 MyGIS

    解决办法:选中那个引用,在属性页,将“嵌入互操作”设置为false

  9. linux命令学习使用记录

    1.文件批量重命名:把所有.xml文件重命名.txt,第一个参数为文件名中字符串,第二个参数为替换后文件名,第三个为当前目录文件列表 rename .xml .txt *.xml 2.解压不显示过程: ...

  10. 高性能JS笔记3——DOM编程

    一.访问与修改DOM DOM和JS 相当于两个岛屿,访问操作的次数越多,要交的过路费越多,对性能产生很大影响. 减少访问DOM的次数,把运算尽量留在JS端操作. 二.innerHTML 对比 DOM ...