一位年近半百初学者在做梦时都能记住的Docker命令和技巧,不点赞、不评论、不关注,这样真的好吗?

一、Docker基本操作命令

Docker容器生命周期管理

docker run 在一个新的容器执行一个命令
docker start 开一个或者更多已经停止的容器
docker stop 停止一个运行的容器
docker restart 重新开始一个运行的容器
docker kill 杀死一个运行的容器
docker rm 删除一个或更多的容器
docker pause 暂停一个容器的所有进程
docker unpaunse 恢复一个容器的所有进程

Docker容器操作运维

docker ps 列出容器
docker inspect 列出关于容器或镜像的底层信息
docker top 显示一个容器运行的进程
docker attach 附上一个运行的容器
docker events 得到实时的来自服务的事件
docker log 获得一个容器的日志
docker wait 阻塞直到一个容器停止,然后打印它的退出代码
docker export 导出一个容器的文件系统作为一个tar文件
docker port 列出容器映射的端口

Docker版本管理

docker commit 创建一个新的镜像从一个容器
docker cp 从容器复制一个文件或目录到本地目录或标准输出
docker diff 展示一个容器文件系统的变化
Docker镜像仓库
docker login 登入仓库
docker pull 拉取镜像
docker push 推送镜像
docker search 搜索镜像

Docker本地镜像管理

docker images 列出本地的镜像
docker rmi 删除本地的镜像
docker tag 打标签本地的镜像
docker build 通过Dockerfile构建本地的镜像
docker histroy 列出镜像的历史
docker save 保存本地的镜像为一个tar文件
docker import 通过tar导入镜像
docker load 加载tar镜像

Docker其它命令

docker info
docker version

二、小技巧

批量操作:很多时候发现可能需要清理Docker环境,但是容器挨个停止挨个删除确实太过于麻烦了,使用如下命令可以做到很快速的处理批量删除

docker inspect id | grep IPAddress | cut -d '"' -f 4   #获取Container IP地址(Container状态必须是Up)
docker inspect mycon | grep IPAddress   #查看mycon容器的IP地址相关的字段
docker inspect -f '{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' id   #获取端口映射
docker exec container_id env   #获取环境变量
docker kill $(docker ps -q)   #杀掉所有正在运行的容器
docker ps -a | grep 'weeks ago' | awk '{print $1}' | xargs docker rm   #删除老的(一周前创建)容器
docker rm `docker ps -a -q`   #删除已经停止的容器
docker rmi $(docker images -q)   #删除所有镜像,小心
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章