Docker精华篇(一)-常用命令大全,入门到精通

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Docker精华篇(一)-常用命令大全,入门到精通

我们都知道 Docker 的重要性,以及 Docker 如何在软件开发生命周期中发挥重要作用 。说实话,学习 Docker 很有趣,至少在我看来是这样。一旦掌握了基础知识,这并不难。困难的是记住所有这些命令。

因此,在这篇文章中,我收集了所有命令,或者更准确地说,收集了所有最常用的命令。它将帮助您记住这些命令并快速参考它们。

1. Docker运行

要在Docker中运行容器,可以使用以下命令:

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
  • docker run:运行容器的命令。
  • [OPTIONS]:可选参数,用于配置容器的各种选项,如端口映射、容器名称等。
  • IMAGE:要运行的镜像名称或ID。
  • [COMMAND] [ARG...]:可选的命令和参数,用于在容器内执行特定的命令。

2. Docker构建

要构建自己的Docker镜像,可以使用以下命令:

docker build [OPTIONS] PATH | URL | -
  • docker build:构建镜像的命令。
  • [OPTIONS]:可选参数,用于配置构建过程,如镜像标签、构建上下文路径等。
  • PATH | URL | -:Dockerfile所在的路径、URL或者使用标准输入作为Dockerfile。

3. Docker pull

要从Docker仓库中拉取现有的镜像,可以使用以下命令:

docker pull [OPTIONS] NAME[:TAG|@DIGEST]
  • docker pull:拉取镜像的命令。
  • [OPTIONS]:可选参数,用于配置拉取过程,如认证信息等。
  • NAME[:TAG|@DIGEST]:要拉取的镜像名称、标签或摘要。

4. Docker push

要将本地的镜像推送到Docker仓库,可以使用以下命令:

docker push [OPTIONS] NAME[:TAG]
  • docker push:推送镜像的命令。
  • [OPTIONS]:可选参数,用于配置推送过程,如认证信息等。
  • NAME[:TAG]:要推送的镜像名称和标签。

5. Docker images

要列出本地所有的镜像,可以使用以下命令:

docker images [OPTIONS] [REPOSITORY[:TAG]]
  • docker images:列出镜像的命令。
  • [OPTIONS]:可选参数,用于配置输出结果的格式等。
  • [REPOSITORY[:TAG]]:可选的镜像名称和标签,用于过滤输出结果。

6. Docker ps

要列出正在运行的容器,可以使用以下命令:

docker ps [OPTIONS]
  • docker ps:列出容器的命令。
  • [OPTIONS]:可选参数,用于配置输出结果的格式和过滤条件。

7. Docker stop

要停止正在运行的容器,可以使用以下命令:

docker stop [OPTIONS] CONTAINER [CONTAINER...]
  • docker stop:停止容器的命令。
  • [OPTIONS]:可选参数,用于配置停止过程,如超时时间等。
  • CONTAINER [CONTAINER...]:要停止的容器名称或ID。

8. Docker start

要启动已停止的容器,可以使用以下命令:

docker start [OPTIONS] CONTAINER [CONTAINER...]
  • docker start:启动容器的命令。
  • [OPTIONS]:可选参数,用于配置启动过程,如守护模式等。
  • CONTAINER [CONTAINER...]:要启动的容器名称或ID。

9. Docker restart

要重启正在运行的容器,可以使用以下命令:

docker restart [OPTIONS] CONTAINER [CONTAINER...]
  • docker restart:重启容器的命令。
  • [OPTIONS]:可选参数,用于配置重启过程,如超时时间等。
  • CONTAINER [CONTAINER...]:要重启的容器名称或ID。

10. Docker kill

要强制终止正在运行的容器,可以使用以下命令:

docker kill [OPTIONS] CONTAINER [CONTAINER...]
  • docker kill:终止容器的命令。
  • [OPTIONS]:可选参数,用于配置终止过程,如信号等。
  • CONTAINER [CONTAINER...]:要终止的容器名称或ID。

11. Docker rm/docker rmi

要删除已停止的容器或镜像,可以使用以下命令:

docker rm [OPTIONS] CONTAINER [CONTAINER...]
docker rmi [OPTIONS] IMAGE [IMAGE...]
  • docker rm:删除容器的命令。
  • docker rmi:删除镜像的命令。
  • [OPTIONS]:可选参数,用于配置删除过程,如强制删除等。
  • CONTAINER [CONTAINER...]:要删除的容器名称或ID。
  • IMAGE [IMAGE...]:要删除的镜像名称或ID。

12. Docker exec

要在运行中的容器内执行命令,可以使用以下命令:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
  • docker exec:在容器内执行命令的命令。
  • [OPTIONS]:可选参数,用于配置执行过程,如进入交互模式等。
  • CONTAINER:要执行命令的容器名称或ID。
  • COMMAND [ARG...]:要在容器内执行的命令及其参数。

13. Docker logs

要查看容器的日志输出,可以使用以下命令:

docker logs [OPTIONS] CONTAINER
  • docker logs:查看容器日志的命令。
  • [OPTIONS]:可选参数,用于配置输出结果,如时间戳等。
  • CONTAINER:要查看日志的容器名称或ID。

14. Docker inspect

要获取容器或镜像的详细信息,可以使用以下命令:

docker inspect [OPTIONS] NAME|ID [NAME|ID...]
  • docker inspect:获取详细信息的命令。
  • [OPTIONS]:可选参数,用于配置输出结果的格式等。
  • NAME|ID [NAME|ID...]:要获取信息的容器或镜像的名称或ID。

15. Docker cp

要在容器和主机之间复制文件或目录,可以使用以下命令:

docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH
docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
  • docker cp:复制文件或目录的命令。
  • [OPTIONS]:可选参数,用于配置复制过程,如权限等。
  • CONTAINER:SRC_PATH:源路径,其中CONTAINER是容器名称或ID。
  • DEST_PATH:目标路径,其中DEST_PATH是主机路径。
  • SRC_PATH|-:源路径,其中-表示从标准输入读取。

16. Docker system prune

要清理不再使用的镜像、容器和其他资源,可以使用以下命令:

docker system prune [OPTIONS]
  • docker system prune:清理资源的命令。
  • [OPTIONS]:可选参数,用于配置清理过程,如强制删除等。

17. Docker network

Docker网络允许容器之间进行通信和连接到外部网络。以下是一些与Docker网络相关的常用命令:

  • docker network ls:列出所有的Docker网络。
  • docker network create:创建一个新的Docker网络。
  • docker network connect:将容器连接到指定的Docker网络。
  • docker network disconnect:将容器从指定的Docker网络断开连接。

18. Docker volume

Docker卷用于在容器和主机之间持久化存储数据。以下是一些与Docker卷相关的常用命令:

  • docker volume ls:列出所有的Docker卷。
  • docker volume create:创建一个新的Docker卷。
  • docker volume inspect:获取Docker卷的详细信息。
  • docker volume rm:删除指定的Docker卷。

19. Docker-compose

Docker-compose是一个用于定义和运行多个容器应用程序的工具。它使用YAML文件来配置应用程序的服务、网络和卷等。以下是一些与Docker-compose相关的常用命令:

  • docker-compose up:构建并启动Docker-compose定义的所有服务。
  • docker-compose down:停止并删除Docker-compose定义的所有服务。
  • docker-compose build:构建Docker-compose定义的所有服务的镜像。
  • docker-compose logs:查看Docker-compose定义的所有服务的日志。

20. Docker swarm

Docker swarm是Docker的原生集群管理和编排工具,用于在多个Docker主机上运行和管理应用程序。以下是一些与Docker swarm相关的常用命令:

  • docker swarm init:初始化一个新的Docker swarm集群。
  • docker swarm join:将节点加入到Docker swarm集群。
  • docker node ls:列出Docker swarm集群中的所有节点。
  • docker service:管理在Docker swarm集群中运行的服务。

21. Dockerfile

Dockerfile是用于定义Docker镜像构建过程的文本文件。它包含一系列的指令和配置,用于指导Docker引擎在构建过程中执行特定的操作。以下是一些与Dockerfile相关的常用命令:

  • FROM:指定基础镜像。
  • RUN:在容器内执行命令。
  • COPY:将文件或目录从主机复制到容器内。
  • ADD:将文件或目录从主机复制到容器内,并支持URL和解压缩操作。
  • WORKDIR:设置工作目录。
  • EXPOSE:声明容器运行时监听的端口。
  • CMD:指定容器启动时要执行的命令。

这些命令可以在Dockerfile中按照特定的顺序组合使用,以定义和构建自定义的Docker镜像。

22. Docker登录和认证

要登录到Docker仓库或私有镜像仓库,可以使用以下命令:

  • docker login:登录到Docker仓库。
  • docker logout:退出登录。

登录后,您可以使用docker pulldocker push命令来拉取和推送镜像。

23. Docker容器日志管理

除了使用docker logs命令查看容器日志外,还可以使用以下命令对容器日志进行管理:

  • docker logs --tail:只显示最后几行的日志。
  • docker logs --follow:实时跟踪容器的日志输出。
  • docker logs --since:只显示特定时间之后的日志。
  • docker logs --until:只显示特定时间之前的日志。

这些命令可以根据需要对容器日志进行筛选和处理。

这些是Docker的一些常用命令,如果您对特定主题或命令感兴趣,请告诉我,我将很乐意为您提供更详细的信息。

总结

简而言之,这份关键命令快速指南对于管理容器和构建镜像非常方便。了解这些基础知识可以让处理 Docker 变得不再那么棘手!

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
30天前
|
监控 Docker 容器
Docker 启动命令里 --cgroupns host 是什么作用?
【8月更文挑战第19天】Docker 启动命令里 --cgroupns host 是什么作用?
81 1
|
21天前
|
NoSQL 关系型数据库 MySQL
docker部署jumpserver及入门
docker部署jumpserver及入门
|
28天前
|
应用服务中间件 nginx Docker
【与时俱进】网络工程师必备技能:Docker基础入门指南,助你轻松应对新时代挑战!
【8月更文挑战第22天】随着容器技术的发展,Docker已成为开发与运维的关键工具。本文简要介绍Docker——一种开源容器化平台,能让应用程序及依赖项被打包成轻量级容器,在任何Linux或Windows机器上运行。文中涵盖Docker的安装步骤、基础命令操作如启动服务、查看版本、拉取与运行容器等。并通过实例演示了如何运行Nginx服务器和基于Dockerfile构建Python Flask应用镜像的过程。这些基础知识将助力网络工程师理解Docker的核心功能,并为实际应用提供指导。
47 2
|
2天前
|
Kubernetes Cloud Native 开发者
云原生入门:从Docker到Kubernetes的旅程
【9月更文挑战第16天】 本文将带你进入云原生的世界,从理解Docker容器的基础开始,逐步深入到Kubernetes集群管理。我们将通过简单的代码示例和实际操作,探索这两个关键技术如何协同工作,以实现更高效、灵活的应用程序部署和管理。无论你是云原生新手还是希望深化理解,这篇文章都将为你提供清晰的指导和实用的知识。
26 11
|
17天前
|
应用服务中间件 Shell nginx
Docker容器操作基础命令
关于Docker容器操作基础命令的教程,涵盖了从启动、查看、删除容器到端口映射和容器信息获取的一系列常用命令及其使用方法。
56 14
|
13天前
|
存储 Docker 容器
docker save命令和load命令
docker save命令和load命令
|
1月前
|
JSON JavaScript 开发者
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
【8月更文挑战第7天】Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
Composerize神器:自动化转换Docker运行命令至Compose配置,简化容器部署流程
|
23天前
|
Docker 容器
Docker Kill/Pause/Unpause命令详细使用指南
总之,`docker kill`、`docker pause`和 `docker unpause`命令是对容器执行快速状态控制操作的有力工具。使用这些命令可以帮助您更好地管理容器,并在需要时快速响应异常情况。在操作过程中,应当谨慎使用 `docker kill`,因为它将导致容器立即停止,有可能导致数据丢失或文件系统损坏。在可能的情况下,先尝试使用 `docker stop`命令以正常方式停止容器。
16 2
|
23天前
|
负载均衡 调度 Docker
|
24天前
|
Kubernetes Cloud Native Docker
云原生入门指南:从Docker到Kubernetes的旅程
【8月更文挑战第26天】在这篇文章中,我们踏上了一段探索云原生世界的旅程。从理解Docker容器的基础概念开始,逐步深入到使用Kubernetes进行容器编排,每一步都以通俗易懂的语言和实际代码示例为引导。文章旨在启发读者思考云原生技术如何改变软件开发、部署和管理的方式,以及这些变革对个人职业生涯的意义。通过这段旅程,我们将发现,正如甘地所言,成为我们希望在世界上看到的改变,正是通过学习和实践云原生技术来实现的。