Docker容器常用命令:
1.创建容器:
docker create {IMAGE}
参数:
--name : 指定容器名称
-t: 分配终端
-i : 标准输入
2.启动已创建容器:
docker start < CONTAINER ID>
参数:
-d : 后台模式
3.创建并启动容器:
docker run {参数}{IMAGE}
参数:
-d : 后台模式
-t: 分配终端
-i : 标准输入
例如: docker run -dti centos python
4.删除容器:
docker rm < CONTAINER ID>
当该容器在执行状态或者暂停状态,需加参数 -f 进行强制删除
5.启动/停止/关闭容器:
docker stop : 停止容器运行
参数:-t int: 等待 一定时间后停止
docker start : 启动暂停或停止运行的容器
docker kill : 关闭容器
6.暂停/解除暂停容器:
docker pause < CONTAINER ID>:暂停容器运行
docker unpuase < CONTAINER ID>: 恢复暂停状态的容器运行
7.重启容器:
docker restart < CONTAINER ID>
8.查看容器日志:
docker logs
9.修改容器名称:
docker rename {name1} {name2}
10.查看容器详细信息:
docker inspect < CONTAINER ID>
会出现json格式的文本信息,如果想查看某一行信息,采用 docker inspect {name} | grep {该行包含的唯一字符}
如果想查看json中的某一块内容,采用Go的format方法:docker inspect -f “{{json .key1值.key2值}}” 注意:json与’.'之间
11.将本地标准输入,输出和错误流附加到正在运行的容器:
docker attach < CONTAINER ID>
12.在运行中的容器执行一个命令:
docker exec < CONTAINER ID> {命令}
参数:
-d : 后台运行命令
-i int : 即使没链接容器,也将当前的STDIN绑定上
-t : 分配一个虚拟终端
-w : 指定在容器中的工作目录(常用)
-e : 设置容器中运行时的环境变量
Docker exec 和Docker attach命令的区别:
Docker exec和Docker attach都可以attach到一个已经运行的容器的stdin,然后进行命令执行的动作
不同的地方在于当执行docker attach < CONTAINER ID> 进入容器的stdin后在exit后,导致容器的停止.(不会启动新的进程).
而docker exec < CONTAINER ID> /bin/bash 进入容器的stdin后在exit后,容器的运行状态不受影响.(其实质是在容器中打开新的终端)
常用的为Docker exec 命令,要熟悉其参数的使用.
13.将更改的容器生成一个新的镜像:Docker commit 命令:
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
参数:
-a: 作者
-c: 对创建的图像应用dockerfile指令
-m: 说明
-p: 在commit的时候使容器暂停,(默认为暂停)
例子:
docker commit -a JIANPING -m “例子” < CONTAINER ID> ubuntu:v1.0
14.将容器导出为tar文件:Docker export 命令
docker export [OPTIONS] CONTAINER
参数:
-o: 重定向
例子:
docker export -o ubuntu-1.0.tar < CONTAINER ID>
15.将容器导出的tar文件重新生成镜像:Docker import 命令
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
参数:
-m: 说明
例子:
docker import -m “docker-container-import-text” ubuntu-1.0.tar ubuntu-v2:v1.1