一、镜像
1、获取镜像
docker [image] pull NAME[:TAG]
e.g. docker pull ubuntu:18.04 (加了Tag标签,指定下载18.04版本)
e.g. docker pull ubuntu (没有加TAG,默认下载latest版本,生成环境不建议,会随版本变化而变化)
e.g. docker pull nacos/nacos-server (nacos/表示的是Nacos仓库名,nacos-server为镜像名)
2、查看镜像信息
docker images 或者
docker image ls
3、查看详细信息
docker [image] inspect
e.g. docker inspect nacos/nacos-server
e.g. docker inspect 49a2aedd88f2 (49a2aedd88f2为镜像ID)
查看某一项信息
docker inspect -f {{".Id"}} nacos/nacos-server
4、添加镜像标签
docker tag nacos/nacos-server mynacos:latest
5、查看镜像历史
docker history nacos/nacos-server
6、搜索镜像
docker search [OPTION] keyword
命令选项主要有:
-f , --filter 过滤输出内容
--format string: 格式化输出内容
--limit int:限制输出结果个数,默认25
--no-trunc:不截断输出结果
e.g. docker search --filter=stars=100 nacos (查找最受欢迎的)
7、删除和清理镜像
- 删除镜像
docker rmi 或者
docker image rm
命令选项主要有:
-f , -force:强制删除镜像,即使有容器依赖它
-no-prune:不要清理未带标签的父镜像
e.g. docker rmi mynacos
e.g. docker rmi 49a2aedd88f2
- 清理镜像
docker image prune
命令选项主要有:
-a, -all:删除所有无用镜像,不光是临时镜像
-filter:只清理符合给定过滤器的镜像
-f , -force:强制删除镜像
8、创建镜像
- 基于已有容器创建
docker [container] commit [OPTION] CONTAINER [REPOSITORY[:TAG]]
命令选项主要有:
-a , --author="":作者信息
-c , --change=[]:提交时执行Dockerfile指令
-m , --message="":提交备注信息
-p , --pause=true:提交时暂停容器运行
- 基于本地模板导入
docker [image] import [OPTION] file|URL| - [REPOSITORY[:TAG]]
- 基于Dockerfile创建
首先编写Dockerfile文件,此处不详细列出,自行百度。
文件编写完成后,可以使用一下命令编译,编译成功后将创建完成新的镜像
docker [image] build
9、存出和载入镜像
- 存出镜像
导出镜像到本地文件。
docker [image] save
命令选项主要有:
-o , -output string:导入到指定文件中
e.g. docker save -o nacos.tar nacos/nacos-server
- 载入镜像
从指定文件读取镜像,载入到本地镜像库。
docker [image] load
命令选项主要有:
-i , -input string:从指定文件中读入镜像内容
e.g. docker load -i nacos.tar 或者
docker load < nacos.tar
10、上传镜像
将镜像上传至镜像仓库中。
docker [image] push NAME[:TAG] | [REGISTRY_HOST[:REGISTRY_PORT] / ] NAME[:TAG]
二、容器
1、创建容器
使用该命令创建出的容器,容器是出于停止状态的。
docker [container] create
e.g. docker create -it nacos/nacos-server
2、启动容器
使用该命令可以启动一个已经创建的容器,使容器出于运行状态。
docker [container] start
e.g. docker start nacos/nacos-server 或者
docker start xxx (xxx为创建的容器ID)
3、新建并启动容器
执行该命令,就等价于先执行了create,再执行start命令。
docker [container] run
4、等待容器退出
等待容器退出,并打印退出返回结果。
docker container wait CONTAINER [CONTAINER...]
5、查看容器输出
docker [container] logs
e.g. docker logs nacos/nacos-server 或者
docker logs xxx (xxx为创建的容器ID)
6、暂停容器
使运行中的容器处于暂停状态:
docker [container] pause CONTAINER [CONTAINER...]
使暂停中的容器恢复运行状态:
docker [container] unpause CONTAINER [CONTAINER...]
7、终止容器
docker [container] stop [-t | --time [=10]] [CONTAINER...]
先向容器发送SIGTERM信号,等待一段超时时间后(默认10s),发送SIGKILL信号终止容器。
docker container prune
清楚所有处于停止状态的容器。
docker [container] kill
直接发送SIGKILL信号强制终止容器。
docker [container] start
重新启动处于终止状态的容器。
docker [container] restart
先将运行状态容器终止,再重新启动容器。
8、进入容器
- attach命令
docker [container] attach [--detach-keys [=[]]] [--no-stdin] [--sig-proxy [=true]] CONTAINER
命令选项主要有:
--detach-keys [=[]]:指定退出attach模式的快捷序列,默认是CTRL-p CTRL-q
--no-stdin=true | false:是否关闭标准输入,默认保持打开
--sig-proxy=true | false:是否代理收到的系统信号给应用进程
- exec命令
docker [container] exec [--detach-keys [=[]]] [--no-stdin] [--sig-proxy [=true]] CONTAINER