1、查看和删除镜像
(1)Docker Image 镜像 容器的基石
层叠的只读文件系统
联合加载(union mount)
(2)镜像的存储地址 /var/lib/docker
也可以通过 docker info 查看
(3)列出镜像 docker images [OPTIONS] [REPOSITORY]
-a, --all=false; -f,--filter=[];
--no-trunc=false; -q,--quiet=false
(4)镜像的仓库
PEPOSITORY 仓库 REGISTRY 仓库?
(5)镜像标签 TAG 如:ubuntu:14.04 ubuntu:latest
(6)查看镜像的详细信息 docker inspect [OPTIONS] CONTAINER|IMAGE [CONTAINER|IMAGE...]
-f,--format=""
(7)删除镜像 docker rmi [OPTIONS] IAMGE [IMAGE...]
-f, --force=fasle 强制删除镜像
--no-prune=false 不会删除未打标签的父级镜像
2、获取和推送镜像
(1)查找镜像
①Docker Hub https://registry.hub.docker.com
②docker search [OPTIONS] TERM
--automated=fasle Only show automated builds
--no-trunc=false Don't truncate output
-s, --stars=0 Only displays with at least x stars (最低星级)
最多返回25个结果
查找3星以上的ubuntu镜像
(2)拉取镜像 docker pull [OPTIONS] NAME [:TAG]
-a,--all-tag=false 下载所有标记的镜像到仓库
Q: 怎么提高下载镜像的速度?
A: 使用 --registry-mirror选项
a)修改:/etc/default/docker
b)添加:DOCKER_OPTS="--registry-mirror=http://MIRROR-ADDR"
访问http://www.daocloud.io注册一个账号,并登陆,获取一个Dorker加速器
在windows环境下的boot2docker配置加速器:
- docker-machine ssh default
- sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=http://629be644.m.daocloud.io |g" /var/lib/boot2docker/profile
- exit
- docker-machine restart default
再执行docker-machine env default,然后按要求依次执行下面的命令
(3)推送镜像 docker push NAME[:TAG]
3、构建镜像
保存对容器的修改,并再次使用;自定义镜像的能力;以软件的形式打包并分发服务及其运行环境
(1)docker commit 通过容器构建
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
-a,--author="" Author
-m,--message="" Commit message
-p,--pause=true Pause container during commit
下面用yw_sir/demo-web-nginx-01运行一个容器
docker run -d --name nginx-web01 -p 12345 yw_sir/demo-web-nginx-01 nginx -g "daemon off"
(2)docker build 通过Dockerfile文件构建
①创建Dockerfile文件
②使用docker build命令 docker build [OPTIONS] PATH | URL | -
--force-rm=false --no-cache=fasle --pull=fasle
-q,--quiet=fasle --rm=true -t,tag=""
查看构建生产的镜像
利用该镜像运行一个容器
查看容器运行
访问验证