本文介绍内容包括“容器生命周期管理命令”、“容器操作命令”、“容器rootfs命令”、“镜像仓库命令”、“本地镜像管理命令”和“基础版本信息命令”。 >>
容器生命周期管理命令
run
创建一个新的容器。
# 使用docker镜像nginx:latest以后台模式启动一个容器,并将容器命名为mynginx。
docker run --name mynginx -d nginx:latest
# 使用镜像 nginx:latest,以后台模式启动一个容器,将容器的 80 端口映射到主机的 80 端口,主机的目录 /data 映射到容器的 /data。
docker run -p 80:80 -v /data:/data -d nginx:latest
# 使用镜像nginx:latest以交互模式启动一个容器,在容器内执行/bin/bash命令。
docker run -it nginx:latest /bin/bash
start/stop/restart
- docker start : 启动一个或多个已经被停止的容器。
- docker stop : 停止一个运行中的容器。
- docker restart : 重启容器。
# 启动已被停止的容器mynginx
docker start mynginx
# 停止运行中的容器mynginx
docker stop mynginx
# 重启容器mynginx
docker restart mynginx
kill
杀掉一个运行中的容器。可选参数:
- -s : 发送什么信号到容器,默认 KILL
# 根据容器名字杀掉容器
docker kill tomcat7
# 根据容器ID杀掉容器
docker kill 65d4a94f7a39
rm
删除一个或多个容器。
# 强制删除容器 db01、db02:
docker rm -f db01 db02
# 删除容器 nginx01, 并删除容器挂载的数据卷:
docker rm -v nginx01
# 删除所有已经停止的容器:
docker rm $(docker ps -a -q)
create
创建一个新的容器但不启动它。
# 使用docker镜像nginx:latest创建一个容器,并将容器命名为mynginx
docker create --name mynginx nginx:latest
exec
在运行的容器中执行命令。可选参数:
- -d : 分离模式: 在后台运行
- -i : 即使没有附加也保持STDIN 打开
- -t : 分配一个伪终端
# 在容器 mynginx 中以交互模式执行容器内 /root/nginx.sh 脚本
docker exec -it mynginx /bin/sh /root/nginx.sh
# 在容器 mynginx 中开启一个交互模式的终端
docker exec -i -t mynginx /bin/bash
# 也可以通过 docker ps -a 命令查看已经在运行的容器,然后使用容器 ID 进入容器。
docker ps -a
docker exec -it 9df70f9a0714 /bin/bash
pause/unpause
- docker pause :暂停容器中所有的进程。
- docker unpause :恢复容器中所有的进程。
# 暂停数据库容器db01提供服务。
docker pause db01
# 恢复数据库容器 db01 提供服务
docker unpause db0
容器操作命令
ps
列出容器。可选参数:
- -a : 显示所有的容器,包括未运行的。
- -f : 根据条件过滤显示的内容。
- –format : 指定返回值的模板文件。
- -l : 显示最近创建的容器。
- -n : 列出最近创建的n个容器。
- –no-trunc : 不截断输出。
- -q : 静默模式,只显示容器编号。
- -s : 显示总的文件大小。
# 列出所有在运行的容器信息。
docker ps
# 列出最近创建的5个容器信息。
docker ps -n 5
# 列出所有创建的容器ID。
docker ps -a -q
补充说明:
容器的7种状态:created(已创建)、restarting(重启中)、running(运行中)、removing(迁移中)、paused(暂停)、exited(停止)、dead(死亡)。
inspect
获取容器/镜像的元数据。可选参数:
- -f : 指定返回值的模板文件。
- -s : 显示总的文件大小。
- –type : 为指定类型返回JSON。
# 获取镜像mysql:5.7的元信息。
docker inspect mysql:5.7
# 获取正在运行的容器mymysql的 IP。
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mymysql
top
查看容器中运行的进程信息,支持 ps 命令参数。
# 查看容器mymysql的进程信息。
docker top mymysql
# 查看所有运行容器的进程信息。
for i in `docker ps |grep Up|awk '{print $1}'`;do echo \\ &&docker top $i; done
events
获取实时事件。参数说明:
- -f : 根据条件过滤事件;
- –since : 从指定的时间戳后显示所有事件;
- –until : 流水时间显示到指定的时间为止;
# 显示docker 2016年7月1日后的所有事件。
docker events --since="1467302400"
# 显示docker 镜像为mysql:5.6 2016年7月1日后的相关事件。
docker events -f "image"="mysql:5.6" --since="1467302400"
说明:如果指定的时间是到秒级的,需要将时间转成时间戳。如果时间为日期的话,可以直接使用,如–since=“2016-07-01”。
logs
获取容器的日志。参数说明:
# 跟踪查看容器mynginx的日志输出。
docker logs -f mynginx
# 查看容器mynginx从2016年7月1日后的最新10条日志。
docker logs --since="2016-07-01" --tail=10 mynginx
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
编程
+关注
关注
88文章
3574浏览量
93545 -
Docker
+关注
关注
0文章
454浏览量
11798 -
rootfs
+关注
关注
0文章
19浏览量
4660
发布评论请先 登录
相关推荐
windowsxp常用命令
windowsxp常用命令 winver---------检查windows版本 wmimgmt.msc----打开windows管理体系结构(wmi) wupdmgr-------
发表于 01-10 09:05
•1271次阅读
Memcache系统常用命令讲解
Memcache系统常用命令讲解(无线电源技术商业计划书)-该文档为Memcache系统常用命令讲解文档,是一份还算不错的参考文档,感兴趣的可以下载看看,,,,,,,,,,,,,,,,
发表于 09-28 11:27
•5次下载
华为设备常用命令汇总
华为设备常用命令如下:
display current-configuration:显示当前配置。
display interface:显示接口信息。
display packet-filter interface:显示接口acl应用信息。
评论