Docker小白的福音:50条Docker命令清单,干就完了
wptr33 2025-04-07 20:05 20 浏览
Docker可以让开发人员、运维人员更容易使用容器创建、部署和运行应用程序。掌握一些必备的Docker命令对于使用Docker的工程师非常重要,那么今天笔者给大家整理了一份Docker的命令备忘单,希望大家可以好好保存,在使用的时候可以拿出来查阅使用。
让我们直接开始!
一、Docker 容器命令
列出所有正在运行的容器
docker ps
还有两个同等作用的命令:
- docker container ps
- docker container ls
列出所有容器(包含所有状态)
docker ps -a
docker ps -a中的-a是-all的缩写。
列出所有正在运行的容器(带文件大小)
docker ps -s
同等作用的命令:
- docker container ls -s
docker ps -s中的-s是-size的缩写,代表了容器在其可写层中写入的数据的大小,virtual表示此容器的镜像使用的磁盘空间量。
列出正在运行的容器的 ID
docker ps -q
同等作用的命令:
- docker container ls -q
docker ps -q中的-q是-quiet的缩写。
列出所有容器的 ID(包含所有状态)
docker ps -a -q
上面的-a和-q的参数可以合并:
docker ps -aq
过滤容器列表 docker ps -f name=un
docker ps -f name=un中的-f是-filter的缩写。
根据状态过滤容器:
docker ps -a -f status=running
二、Docker创建容器
使用 Docker Image 创建一个新容器
docker create
例如我们创建Nginx镜像:
docker create nginx
容器创建后,我们执行命令docker ps验证一下:
Docker Image 创建新容器带上名字
docker create --name
例如我们创建一个名为nginx-container的镜像:
docker create --name nginx-container nginx
然后我们再用docker ps -a验证一下镜像是否已经创建。
三、Docker启动容器
启动 Docker 容器
我们可以使用docker start容器 ID 或名称来使用命令:
docker start
比如我们启动nginx:
docker start nginx-contianer
停止正在运行的 Docker 容器
和启动命令类似,我们可以使用docker stop 容器 ID 或名称来使用命令:
docker stop
比如我们停止nginx:
docker stop nginx-container
重启 Docker 容器
和启动、停止命令类似,我们可以使用docker restart 容器 ID 或名称来使用命令:
docker restart
比如我们重启nginx:
暂停正在运行的容器
和启动、重启、停止命令类似,我们可以使用docker pause 容器 ID 或名称来使用命令:
docker pause
比如我们暂停nginx:
docker pause nginx-container
取消暂停可以使用:
docker unpause
比如我们取消暂停nginx:
docker unpause nginx-container
四、Docker 镜像命令 列出所有 Docker 镜像 docker images
列出所有 Docker 镜像 ID docker images -q
构建 Docker 镜像
docker build -t
Docker 会尝试在 . 中找到一个名为的文件Dockerfile,context_dir然后它会使用该Dockerfile文件创建一个 Docker 映像。
构建 Docker 镜像并用标签区分
docker build . -t :
使用自定义命名的 Dockerfile 构建 Docker 映像
docker build -f -t .
显示 Docker 映像的历史记录
docker history
重命名现有的 Docker 映像
docker tag :
删除 Docker 镜像 docker rmi
强制删除 Docker 镜像
docker rmi -f
五、Docker 日志
获取 Docker 容器的日志
docker container logs
监控 Docker 容器日志
docker container logs -f
类似于Linux命令中的tail -f
获取容器日志的最后 n 行
docker container logs --tail n
六、Docker 网络命令
列出所有网络
docker network ls
创建网络 docker network create --driver
将 Docker 容器连接到网络 docker network connect
断开 Docker 容器与网络的连接 docker network disconnect
删除网络 docker network rm
七、Docker 卷
列出卷
docker volume ls
删除所有未使用的本地卷
docker volume prune
卷的详细信息
[OPTIONS] VOLUME
八、Docker Compose命令
构建 docker compose 文件
docker-compose build
运行 docker compose 文件
docker-compose up
列出在 docker compose 文件中声明的 docker 镜像
docker-compose ls
启动已经使用 docker compose 文件创建的容器
docker-compose start
在 docker-compose.yml 中运行其中一个应用程序
docker-compose run
从 docker compose 中删除 docker 容器
docker-compose rm
从 docker compose 检查 docker 容器状态
docker-compose ps
九、docker hub命令
在 docker hub 中搜索镜像
docker search search_word
从 docker hub 下载镜像
docker pull user/image
向 docker hub 进行身份验证
docker login
将图像上传到 docker hub
docker push user/image
十、批量清除/删除
停止所有容器
docker stop -f $(docker ps -a -q)
删除所有容器
docker rm -f $(docker ps -a -q)
删除所有镜像
docker rmi -f $(docker images -q)
总结
Docker现在已经使用的非常频繁了,今天笔者已经给大家列举了50个Docker常用命令,大家在使用Docker的时候,遇到不会的可以返过来看看。
相关推荐
- 什么是Java中的继承?如何实现继承?
-
什么是继承?...
- Java 继承与多态:从基础到实战的深度解析
-
在面向对象编程(OOP)的三大支柱中,继承与多态是构建灵活、可复用代码的核心。无论是日常开发还是框架设计,这两个概念都扮演着至关重要的角色。本文将从基础概念出发,结合实例与图解,带你彻底搞懂Java...
- Java基础教程:Java继承概述_java的继承
-
继承概述假如我们要定义如下类:学生类,老师类和工人类,分析如下。学生类属性:姓名,年龄行为:吃饭,睡觉老师类属性:姓名,年龄,薪水行为:吃饭,睡觉,教书班主任属性:姓名,年龄,薪水行为:吃饭,睡觉,管...
- java4个技巧:从继承和覆盖,到最终的类和方法
-
日复一日,我们编写的大多数Java只使用了该语言全套功能的一小部分。我们实例化的每个流以及我们在实例变量前面加上的每个@Autowired注解都足以完成我们的大部分目标。然而,有些时候,我们必须求助于...
- java:举例说明继承的概念_java继承的理解
-
在现实生活中,继承一般指的是子女继承父辈的财产。在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。例如猫和狗都属于动物,程序中便可以描述为猫和狗继承自动物,同理,...
- 从零开始构建一款开源的 Vibe Coding 产品 Week1Day4:业界调研之 Agent 横向对比
-
前情回顾前面两天我们重点调研了了一下Cursor的原理和Cursor中一个关键的工具edit_file的实现,但是其他CodingAgent也需要稍微摸一下底,看看有没有优秀之处,下...
- 学会这几个插件,让你的Notepad++使用起来更丝滑
-
搞程序开发的小伙伴相信对Notepad++都不会陌生,是一个占用空间少、打开启动快的文件编辑器,很多程序员喜欢使用Notepad++进行纯文本编辑或者脚本开发,但是Notepad++的功能绝不止于此,...
- 将 node_modules 目录放入 Git 仓库的优点
-
推荐一篇文章Whyyoushouldcheck-inyournodedependencies[1]...
- 再度加码AI编程,腾讯发布AI CLI并宣布CodeBuddy IDE开启公测
-
“再熬一年,90%的程序员可能再也用不着写for循环。”凌晨两点半,王工还在公司敲键盘。他手里那份需求文档写了足足六页,产品经理反复改了三次。放在过去,光数据库建表、接口对接、单元测试就得写两三天。现...
- git 如何查看stash的内容_git查看ssh key
-
1.查看Stash列表首先,使用gitstashlist查看所有已保存的stash:...
- 6万星+ Git命令懒人必备!lazygit 终端UI神器,效率翻倍超顺手!
-
项目概览lazygit是一个基于终端的Git命令可视化工具,通过简易的TUI(文本用户界面)提升Git操作效率。开发者无需记忆复杂命令,即可完成分支管理、提交、合并等操作。...
- 《Gemini CLI 实战系列》(一)Gemini CLI 入门:AI 上命令行的第一步
-
谷歌的Gemini模型最近热度很高,而它的...
- deepin IDE新版发布:支持玲珑构建、增强AI智能化
-
IT之家8月7日消息,深度操作系统官方公众号昨日(8月6日)发布博文,更新推出新版deepin集成开发环境(IDE),重点支持玲珑构建。支持玲珑构建deepinIDE在本次重磅更...
- 狂揽82.7k的star,这款开源可视化神器,轻松创建流程图和图表
-
再不用Mermaid,你的技术文档可能已经在悄悄“腐烂”——图表版本对不上、同事改完没同步、评审会上被一句“这图哪来的”问得哑口无言。这不是危言耸听。GitHub2025年开发者报告显示,63%的新仓...
- 《Gemini CLI 实战系列》(五)打造专属命令行工具箱
-
在前几篇文章中,我们介绍了GeminiCLI的基础用法、效率提升、文件处理和与外部工具结合。今天我们进入第五篇...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
程序员的开源月刊《HelloGitHub》第 71 期
-
详细介绍一下Redis的Watch机制,可以利用Watch机制来做什么?
-
如何将AI助手接入微信(打开ai手机助手)
-
假如有100W个用户抢一张票,除了负载均衡办法,怎么支持高并发?
-
SparkSQL——DataFrame的创建与使用
-
Java面试必考问题:什么是乐观锁与悲观锁
-
redission YYDS spring boot redission 使用
-
一文带你了解Redis与Memcached? redis与memcached的区别
-
如何利用Redis进行事务处理呢? 如何利用redis进行事务处理呢英文
-
- 最近发表
-
- 什么是Java中的继承?如何实现继承?
- Java 继承与多态:从基础到实战的深度解析
- Java基础教程:Java继承概述_java的继承
- java4个技巧:从继承和覆盖,到最终的类和方法
- java:举例说明继承的概念_java继承的理解
- 从零开始构建一款开源的 Vibe Coding 产品 Week1Day4:业界调研之 Agent 横向对比
- 学会这几个插件,让你的Notepad++使用起来更丝滑
- 将 node_modules 目录放入 Git 仓库的优点
- 再度加码AI编程,腾讯发布AI CLI并宣布CodeBuddy IDE开启公测
- git 如何查看stash的内容_git查看ssh key
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)