Docker作为现代软件开发和部署的核心工具,已经成为开发者和运维人员必须掌握的技能。本文旨在为不同阶段的Docker使用者提供一份实用、可查的命令手册,涵盖从基础镜像管理到复杂容器编排的常用操作。不论你是刚接触容器技术的新手,还是需要快速查阅的老手,这份基于实际场景梳理的命令指南都能帮助你更高效地工作。
Docker镜像怎么删除干净

在使用Docker的过程中,随着构建和拉取的次数增多,系统中会积累大量无用的镜像。删除单个镜像可以使用docker rmi命令加上镜像ID或名称,但很多时候你会发现磁盘空间并未真正释放。这是因为可能存在被容器引用的虚悬镜像,或者名称和标签都为的临时镜像。彻底清理的方法是先使用docker image prune命令自动删除所有未被任何容器使用的虚悬镜像,然后再手动删除那些不再需要的特定镜像。如果希望更激进地清理,可以加上-a参数删除所有未被使用的镜像,但操作前务必确认这些镜像确实不再需要。
如何进入容器内部操作

当你需要排查容器内部的问题,或者查看某个服务的运行日志时,就需要进入正在运行的容器。最常用的命令是docker exec -it [容器名或ID] /bin/bash,这个命令会在目标容器中启动一个bash终端,让你像操作普通Linux系统一样执行命令。如果容器内没有bash,可以尝试/bin/sh。需要特别注意的是,进入容器后对文件系统的任何修改都会在容器重启后丢失,除非这些目录是通过卷挂载进来的。对于已经停止运行的容器,无法使用exec命令进入,只能先通过docker start启动它,或者通过docker commit将其保存为新的镜像并运行一个新容器。
容器和宿主机怎么传文件

在日常开发中,经常需要将宿主机上的代码或配置文件复制到容器中,或者从容器内部取出日志文件。Docker提供了docker cp命令来实现这一需求,它的用法非常类似于Linux的cp命令。从宿主机复制到容器,使用docker cp /本地路径/文件 容器名:/容器内路径/;反向操作则调换两个参数的位置。这个命令最大的优点是无需停止容器即可执行docker 命令手册,非常适合在容器运行过程中进行热修复或数据提取。不过,对于频繁的文件交换场景,更推荐在启动容器时使用-v参数挂载数据卷,这样宿主机和容器就能实时共享文件,无需反复执行cp命令。
怎么查看容器占用的资源
当服务器负载升高时,我们需要快速定位是哪个容器在消耗资源。docker stats命令是一个实时监控工具,它能动态显示所有运行中容器的CPU、内存、网络I/O和磁盘I/O的使用情况,效果类似于Linux的top命令。如果只想查看某个特定容器的信息,可以在命令后面加上容器ID。对于历史数据的查看,可以结合docker inspect命令,它会以JSON格式输出容器的底层配置和状态信息,包括详细的资源限制设置。在排查性能问题时linux 命令,这两个命令配合使用,能帮助你从宏观监控到微观分析,快速找到问题根源。

Docker容器日志在哪里看
查看容器日志是诊断应用程序错误的常用手段。Docker会将容器内控制台输出的所有内容都收集起来linux运维最佳实践,你可以通过docker logs命令来查看。最基础的用法是docker logs 容器名,它会显示容器启动以来的所有标准输出和标准错误日志。如果日志量太大,可以加上--tail参数只显示最后n行,或者加上-f参数实现类似tail -f的实时跟踪功能。值得注意的是,如果容器运行时间很长,日志文件可能会占用大量磁盘空间。这些日志默认存储在宿主机的/var/lib/docker/containers目录下,你可以通过配置Docker守护进程的log-opts参数来限制单个日志文件的大小和数量,避免磁盘被写满。
怎么备份和迁移Docker镜像

当你需要将开发环境中的镜像部署到生产环境,或者分享给同事时,就需要掌握镜像的导入导出功能。docker save命令可以将一个或多个镜像打包成一个tar文件,例如docker save -o myimage.tar myimage:latest。拿到这个tar文件后,在目标机器上使用docker load -i myimage.tar就能将镜像加载到本地仓库中。这里需要区分的是save和export命令docker 命令手册,save是针对镜像层的操作,会保留镜像的完整历史记录;而export是针对容器的操作,将容器文件系统打包,但不包含历史信息。通常用于备份和迁移场景,save命令是更安全、更标准的选择。
你在实际工作中最常使用或最想了解的是哪一条Docker命令?欢迎在评论区留言分享你的经验或困惑,点赞收藏本文以便随时查阅,也欢迎转发给身边正在学习Docker的朋友。
