一、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. 关于线上的bug什么时候修复的思考

    这里系统专门指的是那种用户量大的系统,比如有几百万或者上千万的注册会员.因为小系统因为用户量少,不存在这种思考,考虑有时候是多余的.另外还有内部系统,给自己公司内部人员使用的,即便是出现了问题,也不会 ...

  2. jackson中JSON字符串节点遍历和修改

    有些场景下,在实现一些基础服务和拦截器的时候,我们可能需要在不知道JSON字符串所属对象类型的情况下,对JSON字符串中的某些属性进行遍历和修改,比如,设置或查询一些报文头字段. 在jackson中, ...

  3. 实战手记:让百万级数据瞬间导入SQL Server

    想必每个DBA都喜欢挑战数据导入时间,用时越短工作效率越高,也充分的能够证明自己的实力.实际工作中有时候需要把大量数据导入数据库,然后用于各种程序计算,本文将向大家推荐一个挑战4秒极限让百万级数据瞬间 ...

  4. 你可能不需要 jQuery!使用原生 JavaScript 进行开发

    很多的 JavaScript 开发人员,包括我在内,都很喜欢 jQuery.因为它的简单,因为它有很多丰富的插件可供使用,和其它优秀的工具一样,jQuery 让我们开发人员能够更轻松的开发网站和 We ...

  5. Box2D自定义重力

    需要给刚体添加一个自定义的属性:m_customGravity,这样就可以动态的修改每一个刚体自定义的重力,查找box2d源码大约在5486行,加上红色的一句代码 b2Island.prototype ...

  6. 利用Canvas实现360度浏览

    前言:最近几个月来到新公司,主要从事移动端方面的开发,有时候也挺忙挺累的,于是就好一段时间没写博客了.其实自己在这几个月里,自己对canvas以及createjs和egret都有了一定程度上的认识与掌 ...

  7. Atitit.iso格式蓝光 BDMV 结构说明

    Atitit.iso格式蓝光 BDMV 结构说明 1. Iso是个复合文件1 2. Iso内部格式如下1 2.1. Bdmv文件夹格式 BDMV(Blu-ray Disk Movie.BD-MV),为 ...

  8. 见见面、聊聊天 - 5月22日晚7点Meetup,三里屯绿树旁酒吧,畅谈云技术和应用

    总是邮件.QQ什么的线上聊,让我们见面吧,不怕见光死,呵呵.   我和同事会先抛砖引玉,给大家介绍一下Autodesk几款最新的云技术和解决方案,然后大家就可畅所欲言,自由交流.来自五湖四海的人,为了 ...

  9. iOS数据缓存及YYCache的实现分析

    1. 什么是cache cache就是缓存的意思. 计算机上的cache就是高速缓存,计算机组成课程里的定义是,存在于主存和CPU之间,主要用于解决CPU处理数据的速度远远大于读取主存数据的速度. 手 ...

  10. 面试题:“你能不能谈谈,java GC是在什么时候,对什么东西,做了什么事情?”

    面试题目:地球人都知道,Java有个东西叫垃圾收集器,它让创建的对象不需要像c/cpp那样delete.free掉,你能不能谈谈: GC是在什么时候,对什么东西,做了什么事情? 以上算是三个问题,下面 ...