安装：
一些必要的系统工具：
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

获取安装脚本：wget -qO- https://get.docker.com/ | sh

注意操作docker前要启动它的后台服务： service docker start

搜索镜像：docker search centos
下载镜像：docker pull centos   或   docker pull ubuntu:13.10
同一仓库源可以有多个 TAG，代表这个仓库源的不同个版本，如ubuntu仓库源里，有15.10、14.04等多个不同的版本，我们使用 REPOSITORY:TAG 来定义不同的镜像。
列出镜像：docker images
更新镜像：docker commit -m="install lnmp" -a="frogchou" 5d8038de50f9 frogchou/centos-lnmp
m:提交的描述信息

-a:指定镜像作者

e218edb10161：容器ID

runoob/ubuntu:v2:指定要创建的目标镜像名


使用镜像创建一个容器：docker run -i -t --name="centos-new" centos /bin/bash
         -d:让容器在后台运行
         -P:将容器内部使用的网络端口映射到我们使用的主机上。
         -t:在新容器内指定一个伪终端或终端。
         -i:允许你对容器内的标准输入 (STDIN) 进行交互。
查看正在运行的容器：docker ps
查看正在所有的容器：docker ps -a  包括停止的

使用docker logs命令，查看容器内的标准输出 ：
docker logs 2b1b7a428627

启动容器： docker start 容器ID或者容器名称
停止容器：docker stop 容器ID或者容器名称
删除容器：docker rm 容器ID或者容器名称  （删除时容器必须是停止状态）

容器启动后建立一个与容器可交互的命令行窗口：docker exec -it 容器名称/id 执行命令
docker exec -it centos-ss-kms /bin/bash

容器端口映射：
 docker run -d -p 5000:5000 training/webapp python app.py
-P :是容器内部端口随机映射到主机的高端口。
-p : 是容器内部端口绑定到指定的主机端口。
可以指定容器绑定的网络地址，比如绑定 127.0.0.1
docker run -d -p 127.0.0.1:5001:5000 training/webapp python app.py

镜像导入导出操作：
保持镜像为文件：docker save -o 要保存的文件名 要保存的镜像
从文件载入镜像：docker load --input 文件

删除镜像 docker rmi 镜像id

容器导入导出操作：
容器导出：
docker export -o 要保存的文件名 要保存的容器名/id
docker import  要导入的文件名 导入的镜像名称
-c :应用docker 指令创建镜像；

-m :提交时的说明文字；




特殊：
目前使用centos的镜像创建容器后，容器内不能执行service 和systemctl等命令，创建容器使用以下命令
docker run --privileged -p 55555:55555 -p 1688:1688 --name="centos-ss-kms" centos-ss-kms-nginx /usr/sbin/init
privileged ：使用该参数，container内的root拥有真正的root权限。
否则，container内的root只是外部的一个普通用户权限。
privileged启动的容器，可以看到很多host上的设备，并且可以执行mount。
甚至允许你在docker容器中启动docker容器。

从容器中拷贝文件出来:
docker cp nginx-web-server:/etc/nginx/nginx.conf ~/docker-nginx/conf/nginx.conf

离线安装步骤：
更具系统，下载离线包：
yum install docker-ce --downloadonly --downloaddir=/home/student/docker-local
rpm -ivh --force *.rpm

