首页 > 解决方案 > Docker 删除守护进程

问题描述

我想删除一个 Docker 守护进程;因为它在我的电脑上占用更多空间我确实插入了一个代码来安装php:5.3-apache

我使用了这个命令 docker build -t my-php-app 。

我收到这个错误

Sending build context to Docker daemon  7.039GB
Error response from daemon: unexpected error reading Dockerfile: read /var/lib/docker/tmp/docker-builder079515785/dockerfile: is a directory

所以我想删除那个守护进程,因为它在我的电脑上占用了很大的空间;我确实尝试了 3 次来安装它,每次我都遇到同样的错误,所以我现在有超过 21GB 的空间需要清理。

码头工人图像给我:

orsolin/docker-php-5.3-apache   latest              d8e72369c6e9        2 years ago         533MB

但我电脑上的空间已从 30GB 减少到 8GB

我没有看到 7GB 大小的任何东西

REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
abv_web                         latest              2194cdd678e3        45 hours ago        5.09GB
<none>                          <none>              58b330f4aa2f        46 hours ago        623MB
<none>                          <none>              c4b5c889111d        46 hours ago        623MB
<none>                          <none>              cfe4161b5af4        46 hours ago        623MB
<none>                          <none>              f37f2a95529a        46 hours ago        623MB
httpd                           latest              19459a872194        4 days ago          154MB
phpmyadmin/phpmyadmin           latest              d8d2c1fd1eb9        9 days ago          458MB
phpmyadmin/phpmyadmin           edge                4b557b055a8c        9 days ago          458MB
pweb_joomla                     latest              22c6d70d575e        10 days ago         1.01GB
fweb_joomla                     latest              0e36548560af        11 days ago         2.47GB
joomla                          apache              73acf8852f1b        13 days ago         461MB
mysql                           5.6                 732765f8c7d2        4 weeks ago         257MB
joomla                          3.9.5-apache        398227376f4a        4 months ago        415MB
alterway/php                    5.3-apache          87058120bc90        8 months ago        623MB
orsolin/docker-php-5.3-apache   latest              d8e72369c6e9        2 years ago         533MB
airinuit_mysql                  latest              fa73519d1891        2 years ago         304MB
vsamov/mysql-5.1.73             latest              fa73519d1891        2 years ago         304MB

标签: dockerdaemon

解决方案


Docker 在内部运行在客户端/服务器架构上。特别是,当您运行时docker build,它会为您指定的目录创建一个 tar 文件,将该 tar 文件通过套接字发送到 Docker 守护程序,然后在那里解压缩。(即使在完全本地系统上也是如此。)

如果出现问题,该内容可以备份到/var/lib/docker/tmp. 通常你根本不应该四处寻找/var/lib/docker,但是清理这个目录应该是安全的。考虑在执行此操作时停止守护程序。停止守护程序,删除所有/var/lib/docker,并重新启动守护程序也应该有所帮助(您将需要重新docker build和/或docker pull映像并重新运行容器,这将丢失您尚未备份的命名卷中的任何内容)。

7.039 GB 的构建上下文非常大。除了这样的问题之外,它只会导致docker build步骤非常慢;如果所有这些内容都让COPYEd 进入图像,你可能会在尝试docker push构建图像时遇到类似的问题。您可以尝试清理诸如日志文件或堆转储之类的东西(如果它们留在周围);将.git目录或本地供应商树之类的内容添加到.dockerignore文件中也有助于减小上下文的大小。


推荐阅读