Docker基础入门:1.5 Docker命令行基础

Docker是一个开源的容器化平台,允许开发者将应用及其依赖打包到一个轻量级的容器中。Docker命令行工具是与Docker进行交互的主要方式,掌握这些命令是使用Docker的基础。本文将详细介绍Docker命令行的基础知识,包括常用命令、优缺点、注意事项以及示例代码。

1. Docker命令行工具概述

Docker命令行工具通常通过docker命令来调用,后面跟随不同的子命令和参数。基本的命令格式如下:

docker [OPTIONS] COMMAND [ARG...]

1.1 常用命令

以下是一些常用的Docker命令:

  • docker --version:查看Docker版本。
  • docker pull:从Docker Hub或其他注册表下载镜像。
  • docker images:列出本地所有镜像。
  • docker rmi:删除本地镜像。
  • docker run:创建并启动一个容器。
  • docker ps:列出正在运行的容器。
  • docker stop:停止一个运行中的容器。
  • docker rm:删除一个容器。
  • docker exec:在运行中的容器中执行命令。
  • docker logs:查看容器的日志。

1.2 示例代码

1.2.1 查看Docker版本

docker --version

输出示例

Docker version 20.10.7, build f0df350

1.2.2 下载镜像

docker pull ubuntu:latest

优点

  • 通过指定标签(如latest),可以确保下载最新版本的镜像。

缺点

  • 下载大镜像可能需要较长时间,且占用存储空间。

注意事项

  • 确保网络连接正常,以避免下载失败。

1.2.3 列出本地镜像

docker images

输出示例

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu              latest              2e1f3c1c1c1d        2 weeks ago        72.9MB

1.2.4 删除镜像

docker rmi ubuntu:latest

优点

  • 可以释放存储空间,保持环境整洁。

缺点

  • 如果镜像被某个容器使用,删除会失败。

注意事项

  • 使用-f选项强制删除,但需谨慎操作。

1.2.5 创建并启动容器

docker run -d --name my_ubuntu_container ubuntu:latest

参数说明

  • -d:后台运行容器。
  • --name:为容器指定一个名称。

优点

  • 通过命名,可以更方便地管理和访问容器。

缺点

  • 如果不指定名称,Docker会自动生成一个随机名称,可能不易记忆。

1.2.6 列出正在运行的容器

docker ps

输出示例

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
a1b2c3d4e5f6        ubuntu:latest      "/bin/bash"        5 minutes ago      Up 5 minutes                            my_ubuntu_container

1.2.7 停止容器

docker stop my_ubuntu_container

优点

  • 可以安全地停止容器,确保数据不会丢失。

缺点

  • 停止容器后,容器的状态会变为“停止”,需要重新启动才能再次使用。

1.2.8 删除容器

docker rm my_ubuntu_container

优点

  • 清理不再使用的容器,释放系统资源。

缺点

  • 删除后,容器中的数据将无法恢复。

1.2.9 在容器中执行命令

docker exec -it my_ubuntu_container /bin/bash

参数说明

  • -it:以交互模式运行命令。

优点

  • 可以直接在容器中执行命令,方便调试和管理。

缺点

  • 需要确保容器正在运行,否则无法执行命令。

1.2.10 查看容器日志

docker logs my_ubuntu_container

优点

  • 可以查看容器的输出和错误信息,便于排查问题。

缺点

  • 如果容器生成大量日志,可能会导致输出信息过多,难以查找。

2. 总结

掌握Docker命令行工具是使用Docker的基础。通过上述命令,您可以有效地管理Docker镜像和容器。每个命令都有其优缺点和注意事项,合理使用这些命令可以提高开发和运维的效率。

在实际使用中,建议您多加练习,熟悉每个命令的用法和参数选项,以便在需要时能够快速响应。同时,保持对Docker官方文档的关注,以获取最新的功能和最佳实践。