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日志并进行多维度分析。
相关文章
|
6天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
28 2
|
25天前
|
安全 Docker 容器
|
25天前
|
网络安全 数据安全/隐私保护 Docker
|
1月前
|
Kubernetes Cloud Native 云计算
云原生入门:从Docker到Kubernetes的旅程
【10月更文挑战第2天】本文将带你走进云原生的世界,从基础的Docker容器技术开始,逐步深入到Kubernetes集群管理。我们将通过实际代码示例,探索如何利用这些工具构建、部署和管理现代云应用。无论你是初学者还是有经验的开发者,这篇文章都将为你提供宝贵的知识和技能,让你在云原生领域迈出坚实的一步。
84 5
|
24天前
|
存储 监控 安全
|
8天前
|
Cloud Native 持续交付 Docker
Docker容器化技术:从入门到实践
Docker容器化技术:从入门到实践
|
14天前
|
运维 持续交付 虚拟化
docker入门详解!!!
本文介绍了容器技术的发展历程,从物理机到虚拟化再到容器化,重点讲解了Docker的诞生及其优势。Docker通过轻量级的容器技术,实现了资源的高效利用、快速启动、环境一致性、持续交付和部署等优点。文章还详细解析了Docker的架构和工作原理,包括Docker Daemon、REST接口、Docker Client等组件,以及容器与虚拟机的差异。
52 2
|
21天前
|
Kubernetes Cloud Native 开发者
云原生技术入门:Kubernetes和Docker的协作之旅
【10月更文挑战第22天】在数字化转型的浪潮中,云原生技术成为推动企业创新的重要力量。本文旨在通过浅显易懂的语言,引领读者步入云原生的世界,着重介绍Kubernetes和Docker如何携手打造弹性、可扩展的云环境。我们将从基础概念入手,逐步深入到它们在实际场景中的应用,以及如何简化部署和管理过程。文章不仅为初学者提供入门指南,还为有一定基础的开发者提供实践参考,共同探索云原生技术的无限可能。
33 3
|
24天前
|
存储 关系型数据库 MySQL
|
26天前
|
Ubuntu Shell 开发者
Docker入门:轻松开始容器化之旅
【10月更文挑战第17天】Docker 是一种开源的应用容器引擎,它让开发者能够“一次构建、到处运行”。Docker 通过容器化技术将应用程序及其依赖打包在一起,从而确保应用在任何环境中都能一致地运行。本文将为新手用户提供一个全面的Docker入门指南,包括基本概念、优势、安装配置以及如何创建和管理容器。
45 2