查看镜像:
docker images [OPOTSION] [REPOSITORY]
-a,--all=false 显示所有镜像,默认并不显示中间层的镜像
-f,--filter=[] 在显示时的过滤条件
--no-trunc=false 不使用截断的形式来显示数据
-q,--quiet=false 只显示镜像的唯一ID
例子:
docker images//返回已经安装的列表
docker images --no-trunc//返回镜像,并且返回完整的镜像id
docker images -a//显示所有的镜像
docker images -q//只返回imageid
docker images 仓库名称//返回仓库名称对应的镜像
查看镜像的详细信息:
docker inspect [OPTIONS] CONTAINER|IMAGE [CONTAINER|IMAGE...]
-f,--format=""
例子:
docker inspect ubuntu(仓库名):14.04(标签名)
删除镜像:
docker rmi [OPTIONS] IMAGE [IMAGE...]
-f,--force=false 会强制删除镜像
--no-prune=false 保留被删除镜像中被打标签的父镜像
例子:
//删除单个
docker rmi 仓库名:标签名 or imageId的剪短形式 or imageId完整形式
//删除多个
docker rmi 仓库名:标签名 imageId的剪短形式 imageId完整形式
//删除全部
docker rmi $(docker images -q)
查找镜像:
方法一:Docker Hub
https://registry.hub.docker.com
方法二:docker的命令行工具
docker search [OPTIONS] TERM //最多返回25个结果
--automated=false 自动化选项,选定了就只会显示自动化构建的docker项目
--no-trunc=false 不以截断的方式选择输出
-s,--start=0 用来选定返回结果的最低星级
例子:
docker search ubuntu
docker search -s 3 ubuntu//星级限制3星以上
拉取镜像
docker pull [OPTIONS] NAME [:TAG]
-a,--all-tag=false 将匹配到镜像名字所有标记的镜像下载到本地
例子:
docker pull ubuntu //不指定标签默认标签为:latest
解决国内网络慢的方法
使用 --registry-mirror选项
1.修改:/etc/default/docker
2.添加:DOCKER_OPTS="--registry-mirror=http://MIRROR-ADDR" https://www.daocloud.io
操作:
1.进入daocloud主页更多,选择加速器,他将操作写成sh文件了,运行sh文件就可以了
2.sudo service docker restart 重新启动
2.ps -ef | grep docker 查看是否成功
推送镜像
docker push NAME[:TAG] //要注册dockerhub账号
构建docker镜像
1.保存对容器的修改,并再次使用
2.提供了自定义镜像的能力
3.以软件的形式打包并分发服务及其运行环境
方法一:docker commit 通过容器构建
docker commit [OPTIONS] CONTAINER [REPOSITORY][:TAG]
-a,--author="" 镜像的作者:通常写作者的名字和联系方式
-m,--message="" 记录镜像构建的信息
-p,--pause=true 由于commit会暂停正在运行的容器暂停,-p可以指示命令不暂停正在运行的容器
例子:
docker commit -a '作者信息' -m '镜像的信息' 容器名or容器id 镜像的名称
docker commit -a 'zhiyuan' -m 'balabala' commite_web01 changebyubuntu
方法二:docker build 通过Dockerfile文件构建
1.创建Dockerfile文件
dockerfile文件:包含了一系列命令的文本文件
例子:
#First Dockerfile
FROM ubuntu:14.04(镜像的基础)
MAINTAINER zhiyuan(镜像的维护人) "[email protected]" (维护人的联系方式)
RUN apt-get update (执行的命令)
RUN apt-get install -y nginx (执行的命令)
EXPOSE 80 (暴露的端口)