处理tar文件时出错(退出状态1):在数据目录存在时使用docker compose生成时出现意外EOF
我的处理tar文件时出错(退出状态1):在数据目录存在时使用docker compose生成时出现意外EOF,docker,docker-compose,Docker,Docker Compose,我的docker compose.yml如下所示: version: '3' services: phab: build: context: . args: - PHAB_BASE_URI=https://phab.example.com - PHAB_REPO_PATH=/var/repo - PHAB_TIMEZONE=Europe/Berlin - PHP_POST_MAX_SIZE=32M
docker compose.yml
如下所示:
version: '3'
services:
phab:
build:
context: .
args:
- PHAB_BASE_URI=https://phab.example.com
- PHAB_REPO_PATH=/var/repo
- PHAB_TIMEZONE=Europe/Berlin
- PHP_POST_MAX_SIZE=32MB
ports:
- "127.0.0.1:8012:80"
volumes:
- ./.data/repos:/var/repo
- ./.data/mysql:/var/lib/mysql/
如果我在启动容器后尝试重建,我会
$ docker-compose build
Building phab
ERROR: Error processing tar file(exit status 1): unexpected EOF
这似乎是由于.data
目录造成的。我找到的唯一“治愈方法”是删除目录或将其移出项目目录。将目录重命名为例如.data1
不会修复它
$ sudo mv .data .data1
$ docker-compose build
Building phab
ERROR: Error processing tar file(exit status 1): unexpected EOF
$ sudo mv .data1 ..
$ docker-compose build
Building phab
Step 1/27 : FROM tutum/lamp:latest
---> 3d49e175ec00
Step 2/27 : RUN apt-get update && apt-get install -y php5-curl php5-mysqlnd php5-gd python3-pygments
---> Using cache
[ ... ]
我正在使用docker compose 1.18.0,构建8dd22a9 abd docker 18.06.0-ce,在Debian 9.5上构建0ffa825
我已经看到了这个问题。然而,仅仅刷新
/var/lib/docker
目录对我来说并不是一个选项。在构建之前修剪未使用的映像,甚至删除基础映像都不能解决此问题。尝试升级到昨天刚刚发布的18.09。构建过程中的“意外EOF”看起来像是18.06版本中的已知问题:我也遇到过同样的问题。以下步骤解决了此问题:
1.)停止Docker服务
systemctl stop docker
systemctl start docker
2.)备份/var/lib/docker
sudo rm -rf /var/lib/docker
3.)删除/var/lib/docker
sudo rm -rf /var/lib/docker
4.)启动Docker服务
systemctl stop docker
systemctl start docker
删除由其他容器生成的文件,如“db_数据”、“mysql_数据”等生成失败的Dockerfile的哪一行。请包括Dockerfile,并指出在失败的生成步骤中添加的文件的大小。是否可以在
文件中添加.data
行?这样,它就不会包含在发送给docker daemonI的生成上下文中。daemonI遇到了同样的问题,并尝试了上面的答案,但最后出现了一个权限错误的文件。这也适用于不同的“错误处理tar”消息(非EOF)错误:服务“app”无法生成:错误处理tar文件(退出状态2):运行时:框架github.com/docker/docker/vendor/github.com/docker/libnetwork/ipamultils.splitNetwork中的错误指针位于0xc00049dd60:0x8