1

CentOS6上Docker的安装与使用

安装Docker

yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
yum install docker-io
service docker start
chkconfig docker on

获取镜像

docker pull kaychen/centos6_lnmp

启动镜像

#进入交互模式
docker run -ti kaychen/centos6_lnmp
#后台运行模式并映射80端口到容器
docker run -d -p 80:80 kaychen/centos6_lnmp

停止镜像

​#查看所有镜像状态
docker ps -a
#停止镜像
docker stop (CONTAINER_ID)
#启动镜像
docker start (CONTAINER_ID)
#重启镜像
docker restart (CONTAINER_ID)

提交镜像修改

docker commit (CONTAINER_ID) kaychen/centos6_lnmp

上传镜像

#登录dockerHub
docker login
#上传镜像
docker push kaychen/centos6_lnmp

导出/载入镜像

#导出镜像到本地
docker save -o centos6_lnmp.tar kaychen/centos6_lnmp:latest
#载入镜像
docker load < centos6_lnmp.tar

导出/导入容器

#导出容器
docker export 61229a6262a3 > export_centos6_lnmp.tar
#导入容器
cat export_centos6_lnmp.tar | sudo docker import - kaychen/testimport
#可以通过指定 URL 或者某个目录来导入
docker import http://example.com/exampleimage.tgz example/imagerepo

注:用户既可以使用 docker load 来导入镜像存储文件到本地镜像库,也可以使用 docker import 来导入一个容器快照到本地镜像库。这两者的区别在于容器快照文件将丢弃所有的历史记录和元数据信息(即仅保存容器当时的快照状态),而镜像存储文件将保存完整记录,体积也要大。此外,从容器快照文件导入时可以重新指定标签等元数据信息。

删除镜像

#一次性删除所有的容器
docker rm $(docker ps -q -a)
#一次性删除所有的镜像
docker rmi $(docker images -q)