服务器空间清理

尝试用docker或者docker-compose去搭建各种服务,比如artalk还有waline,最终都失败了。回过头发现服务器硬盘空间快满了,为了清理内存去网上查教程,很多教程的命令not found,再安装新的命令或程序包又会额外增加空间,在谷歌找到一篇质量比较高的教程Linux 清理磁盘空间常见操作,根据里面的提示逐步尝试,将问题锁定在了docker上。

使用docker system df 命令可以直接查看docker的空间占用情况

1
2
3
4
5
6
[root@racknerd-a450f77 ~]# docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 6 0 4.614GB 4.614GB (100%)
Containers 0 0 0B 0B
Local Volumes 1 0 211B 211B (100%)
Build Cache 19 0 299.8MB 299.8MB

清理Build Cache:

1
2
3
4
5
6
7
[root@racknerd-a450f77 ~]# docker system prune --volumes
WARNING! This will remove:
- all stopped containers
- all networks not used by at least one container
- all anonymous volumes not used by at least one container
- all dangling images
- unused build cache

这会清除所有:

  • 停止的 Container
  • 未被任何 Container 所使用的 Network
  • 未被任何 Container 所使用的 Volume
  • 无实例的 Image
  • 无实例的 Build Cache

上一步中可能不会清理Images,在docker system df中仍然能看到Images的空间占用。这一步可以清理这些Images

,从而

查看所有的 Image

1
docker images -a
1
2
3
4
5
6
7
[root@racknerd-a450f77 ~]# docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
lizheming/waline latest 9873895befe3 11 hours ago 387MB
diygod/rsshub latest 268269d2227b 3 days ago 758MB
artalk/artalk-go latest 5aac21791b04 2 weeks ago 58.3MB
redis alpine 7d06252fad43 2 months ago 41.2MB
browserless/chrome latest c6321df7e375 7 months ago 3.06GB

清理指定的 Image

1
docker rmi <IMAGE ID>
1
2
3
[root@racknerd-a450f77 ~]# docker rmi 9873895befe3
Untagged: lizheming/waline:latest
Deleted: sha256:9873895befe3c74104fe058726c8a1e514e5a50a5bbbeb502cff80e9ae2c6be7

最后是这个browserless/chrome,占据内存非常大,但又不是近期我自己安的,不敢删,我们来问问ai吧:

问题1:browserless/chrome是什么

以下是各列的详细解释:

  • REPOSITORY: 镜像的仓库名,通常表示镜像的来源或归属。例如,lizheming/waline、redis、browserless/chrome 等都是镜像的仓库名。
  • TAG: 镜像的标签,用于标识镜像的版本。常见的标签包括 latest、版本号(如 1.0)等。在输出中,所有镜像都使用了 latest,表示最新版本。
  • IMAGE ID: 每个镜像都有一个唯一的 ID(哈希值),用于标识这个镜像。例如,9873895befe3 就是 lizheming/waline 的镜像 ID。
  • CREATED: 镜像的创建时间,表示这个镜像被构建的时间。例如,lizheming/waline 是在 11 hours ago 创建的。
  • SIZE: 镜像的大小。它表示这个镜像在磁盘上占用的空间。例如,browserless/chrome 镜像大小为 3.06GB,而 redis 镜像为 41.2MB。

browserless/chrome这个镜像提供一个无头的 Chrome 浏览器环境,用于自动化浏览器相关任务,比如爬虫或者测试,体积比较大是因为包含了完整的 Chrome 浏览器和依赖项。

问题2:我删除了它会有影响吗?

删除第 5 个 browserless/chrome Docker 镜像会有以下几方面的影响,取决于你是否依赖它:

  1. 与浏览器自动化相关的任务会受影响
    • browserless/chrome 镜像通常用于无头(headless)浏览器环境下的任务,比如自动化浏览、爬虫或自动化测试等。删除这个镜像后,如果你有依赖该镜像进行浏览器相关的自动化任务(如通过 Selenium、Puppeteer 等工具执行测试或爬取网页),这些任务将无法正常运行,除非你重新下载该镜像。
  2. 可能需要重新拉取镜像
    • 如果以后你仍然需要使用这个镜像,那么你将不得不重新通过 docker pull browserless/chrome 命令拉取该镜像。这会再次占用带宽和时间,尤其是像这个体积比较大的镜像(3.06GB)。
  3. 没有影响的情况:
    • 如果你当前并没有依赖 browserless/chrome 进行任何工作,或者暂时不打算运行浏览器自动化任务,删除它不会对你的系统或其他容器产生任何影响。
  4. 总结:
    如果你不再需要使用 browserless/chrome 进行自动化浏览器相关的任务,删除它不会对你的系统产生任何问题。而且你可以随时重新下载镜像来恢复使用。如果你仍不确定它是否被使用,可以先检查是否有依赖它的容器正在运行,确保不影响正常工作。

这样的话就先放着不管吧,等下次存储空间告急的时候清理,毕竟已经学了相关的指令。

储存空间转绿啦!
储存空间转绿啦!