一、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. 标签栏使用Demo二

    // //  PHTagViewFrame.m //  标签的使用二 // //  Created by 123 on 16/9/6. //  Copyright © 2016年 彭洪. All ri ...

  2. 基础-WeakReference

    一.概述 为了更好的理解WeakHashMap的原理,我们有必要先来了解一下WeakReference的作用及实现原理.Java中有一个专门的包java.lang.ref,里面定义了我们通常所说的几种 ...

  3. collection中的retainAll()方法

    public class ArraylistDemo { public static void main(String[] args) { Collection list1 = new ArrayLi ...

  4. 线程Thread的基础知识学习

    一.线程的基本概念 1.线程是一个程序内部的顺序控制流. 2.Java的线程是通过java.lang.Thread类来实现的. 3.VM启动时会有一个由主方法{public static void m ...

  5. Java关于Properties用法的总结(一)

    最近项目中有一个这样的需求,要做一个定时任务功能,定时备份数据库的操表,将表数据写入txt文件.因为文件的读写路径可能需要随时改动,所以写死或者写成静态变量都不方便,就考虑使用配置文件,这里总结些配置 ...

  6. 【FFmpeg】Windows下64位ffmpeg编译

    本文主要记录在64位Windows 7下,编译64位ffmpeg的过程. 1.资源准备 (1). MSYS http://sourceforge.net/projects/mingwbuilds/fi ...

  7. 【我的产品观】开发wangEditor一年总结

    1. 引言 标题说是一周年,其实是不是正好是一周年,我也忘记了,光从github的提交记录看也不准确.印象中觉得,如果要论想法,到现在一年多了,如果要论实际写代码,可能差不多正好一年. 从8月底在济南 ...

  8. asp.net web常用控件FileUpload(文件上传控件)

    FileUpload控件的主要中能:向指定目录上传文件,该控件包括一个文本框和一个浏览按钮. 常用的属性:FileBytes,FileContent.FileName.HasFile.PostedFi ...

  9. heX——基于 HTML5 和 Node.JS 开发桌面应用

    heX 是网易有道团队的一个开源项目,允许你采用前端技术(HTML,CSS,JavaScript)开发桌面应用软件的跨平台解决方案.heX 是你开发桌面应用的一种新的选择,意在解决传统桌面应用开发中繁 ...

  10. 站长必备:10个好用的 WordPress 备份插件

    网站备份对于站长来说极其重要的.任何的事情都可能发生,这可能会导致你失去所有的辛勤工作:您的网站可能被黑客攻破,你可以安装一个了插件导致冲突,你的服务器可能被攻击,你可能在编辑文件时犯了一个错误等等, ...