Image
docker images | docker image ls
列出镜像
列出镜像id | -q |
列出中间层,中间层镜像是其它镜像所依赖的镜像。 | -a |
指定镜像 | 仓库名:标签名 |
过滤镜像 | -f before | since | LABEL=条件 |
虚悬镜像 | -f dangling=true |
docker rmi | docker image rm
删除镜像
删除虚悬镜像: docker rmi $(docker images -q -f dangling=true)
docker [image] pull
下载镜像
$ docker [image] pull [选项] 名称
docker [image] tag
重命名镜像
$ docker [image] tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
docker [image] history
查看镜像历史
docker [image] build
构建docker镜像
.dockerignore:忽略提交的文件。
默认Dockerfile的文件名为Dockerfile,可以用-f 指定。
$ docker build -t nginx:v3 .
$ docker build [https://github.com/twang2218/gitlab-ce-zh.git#:8.14](https://github.com/twang2218/gitlab-ce-zh.git#:8.14)
$ docker build [http://server/context.tar.gz](http://server/context.tar.gz)
$ docker build - < context.tar.gz
$ docker build - < Dockerfile
$ cat Dockerfile | docker build -
docker [image] import
导入docker容器快照
$ docker [image] import [选项] 文件 | URL | 仓库名[:标签]
$ docker import \
http://download.openvz.org/template/precreated/ubuntu-14.04-x86_64-minimal.tar.gz
\
openvz/ubuntu:14.04
docker [image] load
导入docker镜像
-i 输入
$ docker load -i alpine-latest.tar.gz
docker [image] save
将镜像保存为归档文件。
$ docker save alpine | gzip > alpine-latest.tar.gz
docker commit
原有镜像+存储层的修改=新镜像.
$ docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
--author 是指定修改的作者
--message 是指定修改的内容
Container
docker [container] run
运行容器
$ docker [container] run [选项] 镜像 [命令] [参数...]
-t Docker分配一个伪终端( pseudo-tty)
-i 交互。
-d 后台运行
--name 给运行的容器起个名字
-P 随机端口映射
-p 映射端口 host port:container port、ip:host port:container port、ip:host port:container port/udp
--net 选择一个网络:--net my-net
--link 连接父容器:--link 父容器名:父容器别名
--rm 运行结束后删掉启动的容器
--mount type=bind,source=/主机目录 ,target=/数据卷目录,[readonly]
$ docker run ubuntu:14.04 /bin/echo 'Hello world'
$ docker run -it ubuntu:14.04 /bin/bash
docker [container] start/stop/restart
运行/停止/重启容器
$ docker [container] start/stop/restart [OPTIONS] CONTAINER [CONTAINER...]
docker [container] exec
进入容器
$ docker [container] exec [OPTIONS] CONTAINER COMMAND [ARG...]
$ docker exec -it 69d1 bash
docker [container] attach
进入容器。与exec不同,退出后会导致容器停止。
docker [container] ps
查看运行的docker容器信息
其中port: 0.0.0.0:6380->6379/tcp,左边是主机,右边是容器中
-a:查看包括停止状态的
docker [container] logs
获取容器输出信息
$ docker [container] logs [container ID or NAMES]
docker [container] export
导出镜像
$ docker [container] export 7691a814370e > ubuntu.tar
docker [container] rm
删除容器
$ docker [container] rm [OPTIONS] CONTAINER [CONTAINER...]
Volumn
docker volume create
创建数据卷。不加数据卷名字会随机创建一个
docker volume ls
查看数据卷
docker volume rm
删除数据卷
docker volume prune
删掉没有用的数据卷
Network
docker network create
创建一个网络
docker network ls
显示网络
docker network connect
连接一个容器到网络
docker network disconnect
取消连接
docker network prune
删除无用的创建的网络
docker network rm
删除创建网络
Hub
docker login
登录
docker push
推送镜像到docker hub
其他
docker [image/container/volume/network...] inspect
查看信息,返回JSON
$ docker inspect [OPTIONS] NAME|ID [NAME|ID...]
docker cp
docker容器与宿主之间复制文件
$ docker cp containerId:/容器路径 /主机路径
docker system df
查看镜像、容器、数据卷所占用的空间。 [Docker 1.13+]
docker search
查找镜像
$ docker search --filter=stars=30 redis