Hi! 我是小小,今天是本周的第四篇,将会着重讲解关于Docket的一些命令。
获取Docket容器信息
##查看docker容器版本
docker version
##查看docker容器信息
docker info
##查看docker容器帮助
docker --help
镜像操作
镜像查看
镜像查看命令如下所示:
##列出本地images
docker images
##含中间映像层
docker images -a
![](https://i-blog.csdnimg.cn/blog_migrate/97839a2b76eea74dacf8ebf6cf9b5089.png)
##只显示镜像ID
docker images -q
##含中间映像层
docker images -qa
![](https://i-blog.csdnimg.cn/blog_migrate/09df7d5e46bac95f2dd32f8d6bb55c3a.png)
##显示镜像摘要信息(DIGEST列)
docker images --digests
##显示镜像完整信息
docker images --no-trunc
![](https://i-blog.csdnimg.cn/blog_migrate/a7f2dd4d48fbb24086ddb4ee71006d16.png)
##显示指定镜像的历史创建;参数:-H 镜像大小和日期,默认为true;--no-trunc 显示完整的提交记录;-q 仅列出提交记录ID
docker history -H redis
镜像查找
##搜索仓库MySQL镜像
docker search mysql
## --filter=stars=600:只显示 starts>=600 的镜像
docker search --filter=stars=600 mysql
## --no-trunc 显示镜像完整 DESCRIPTION 描述
docker search --no-trunc mysql
## --automated :只列出 AUTOMATED=OK 的镜像
docker search --automated mysql
下载镜像
##下载Redis官方镜像
docker pull redis
##下载仓库所有镜像
docker pull -a redis
##下载私人镜像
docker pull bitnami/redis
![](https://i-blog.csdnimg.cn/blog_migrate/67fae988f74bb972c56b2781088c57d1.png)
删除镜像
##单个镜像删除
docker rmi redis
##强制删除
docker rmi -f redis
##多个镜像删除
docker rmi -f redis tomcat nginx
##删除本地镜像
docker rmi -f $(docker images -q)
构建镜像
##(1)编写dockerfile
cd /docker/dockerfile
vim mycentos
##(2)构建docker镜像
docker build -f /docker/dockerfile/mycentos -t mycentos:1.1
容器操作
启动容器
##新建并启动容器
docker run -i -t --name mycentos
##后台启动容器
docker run -d mycentos
##启动一个或多个容器
docker start redis
##重启容器
docker restart redis
查看容器相关进程
##列出redis容器中运行进程
docker top redis
##查看所有运行容器的进程
for i in `docker ps |grep Up|awk '{print $1}'`;do echo &&docker top $i; done
查看容器相关日志
##查看redis容器日志
docker logs rabbitmq
##查看redis容器日志
docker logs -f -t --tail=20 redis
##查看容器redis从2019年05月21日后的最新10条日志。
docker logs --since="2019-05-21" --tail=10 redis
容器的进入与退出
##使用run方式进入
docker run -it centos /bin/bash
##关闭容器
exit
##仅退出容器
快捷键:Ctrl + P + Q
##直接进入centos 容器启动命令的终端
docker attach --sig-proxy=false centos
##在 centos 容器中打开新的交互模式终端
docker exec -i -t centos /bin/bash
##以交互模式在容器中执行命令
docker exec -i -t centos ls -l /tmp
##以分离模式在容器中执行命令
docker exec -d centos touch cache.txt
查看容器
##查看正在的容器
docker ps
##查看正在的容器的ID
docker ps -q
##查看运行+历史运行过的容器
docker ps -a
##显示运行容器文件大小
docker ps -s
##显示最近创建容器
docker ps -l
##不截断输出
docker ps --no-trunc
![](https://i-blog.csdnimg.cn/blog_migrate/e810cda2db738612b4cf06d3f2730ae1.png)
##获取镜像redis的元信息
docker inspect redis
##获取正在运行的容器的 IP
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' redis
容器的停止与删除
##停止容器
docker stop redis
##杀掉容器
docker kill redis
##删除容器
docker rm redis
##删除容器
docker rm -f redis
##删除容器
docker rm -f $(docker ps -a -q)
docker ps -a -q | xargs docker rm
## 移除容器间的网络连接
docker rm -l db
## 删除容器,并删除容器的数据卷
docker rm -v redis
镜像生成
##基于当前redis容器创建一个新的镜像
docker commit -a="DeepInThought" -m="my redis" [redis容器ID] myredis:v1.1
容器和主机数据拷贝
##将rabbitmq容器中的文件copy至本地
docker cp rabbitmq:/[container_path] [local_path]
##将主机文件copy至rabbitmq
docker cp [local_path] rabbitmq:/[container_path]/
##将主机文件copy至rabbitmq容器,目录重命名
docker cp [local_path] rabbitmq:/[container_path]
关于作者
我是小小,双鱼座的程序猿,我们下期再见~bye
END
「 往期文章 」
扫描二维码
获取更多精彩
小明菜市场
来源:网络(侵删)
图片来源:网络(侵删)
点个在看你最好看