本系列实验环境均为:CentOS6.6 使用epel库安装docker
启动docker并设为开机自启 1
2
| [iyunv@docker1~]# /etc/init.d/dockerstart
[iyunv@docker1~]# chkconfig docker on
|
Docker 运行容器前需要本地存在对应的镜像,如果本地不存在镜像,Docker 会从镜像仓库下载(默认是 DockerHub 公共注册服务器中的仓库)。 从仓库获取镜像 下面从 Docker Hub 仓库下载一个CentOS6.5操作系统的镜像。 1
| [iyunv@docker1~]# docker pull centos
|
查看已有镜像 [iyunv@docker1 ~]# docker images REPOSITORY:来自于哪个仓库 TAG:镜像标签信息 IMAGE ID:镜像id,唯一标识 CREATED:创建时间 VIRTUALSIZE:镜像大小 查看镜像详细信息 [iyunv@docker1 ~]# docker inspect 镜像id 搜索远程仓库中共享的镜像 [iyunv@docker1 ~]# docker search centos NAME:镜像名称 DESCRIPTION:镜像描述 STARS:镜像星级,及受欢迎程度 OFFICIAL:是否官方创建 AUTOMATED:是否自动创建 删除镜像 当镜像创建的容器还存在时是无法删除的,如果需要强行删除需要加-f参数,不推荐使用。正确的做法应该是先删除容器,再删除镜像。docker rm 容器àdocker rmi 镜像。 $ docker rmi 镜像名称或id或id的部分能唯一区分的字符串 1
2
| [iyunv@docker1home]# docker rmi f1b10cd
Deleted:f1b10cd842498c23d206ee0cbeaa9de8d2ae09ff3c7af2723a9e337a6965d639
|
查看本机上存在的所有容器: [iyunv@docker1~]# docker ps -a CONTAINERID:容器ID
IMAGE:镜像名称
COMMAND:运行命令
CREATED:创建时间
STATUS:状态
PORTS:端口
NAMES:名称,貌似是随机的
创建镜像 创建镜像有三种方法: 1、基于已有镜像的容器创建 docker commit [OPTIONS] CONTAINER [REPOSITORY [:TAG] ] -a,,--author=”” 作者信息 -m,--message=”” 提交信息 -p,--pause=”” 提交时暂停容器运行 1
| [iyunv@docker1~]# docker commit -m "my first image" -a "feige"eadad454d5af
|
2、基于本地模版导入 从OpenVZ下载操作系统模版文件 我们下载一个64位的CentOS6的系统模版文件 1
2
3
4
5
6
| [iyunv@docker1home]# wget http://download.openvz.org/templ ... tos-6-x86_64.tar.gz
[iyunv@docker1home]# cat centos-6-x86_64.tar.gz |docker import - centos:6
8be92c6cdb667c903133bfcc3f91db3d4065756c05fec9a1d21c9dc8314226bd
[iyunv@docker1home]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos 6 8be92c6cdb66 55 seconds ago 606.7 MB
|
3、基于Dockerfile创建。 这个留空,后面再说 存出镜像 存出本地的centos6.6为centos_6.6.tar文件 1
| [iyunv@docker1~]# docker save -o centos_6.6.tar centos:6.6
|
载入镜像 1
| [iyunv@docker1~]# docker load --input centos_6.6.tar
|
或者 1
| [iyunv@docker1~]# docker load < centos_6.6.tar
|
上传镜像 默认上传到DockerHub仓库,是需要登录的。在该网站注册后,即可上传自制的镜像 docker push NAME[:TAG]
|