docker-compose up“错误:处理tar文件时出错(archive / tar:invalid tar header)

我无法运行docker-compose updocker-compose build --no-cache 。 两者均以ERROR: Error processing tar file(archive/tar: invalid tar header)退出ERROR: Error processing tar file(archive/tar: invalid tar header)

我通过跑步使自己陷入了这种状况

要停止和移除容器:

 docker stop $(docker ps -a -q) docker rm $(docker ps -a -q) 

要删除所有图像:

 docker rmi $(docker images -q) 

我已经尝试了以下内容:

  • docker-compose ps不会列出任何容器或图像。

  • docker ps -a也没有列出任何容器。

  • docker image list不列出任何图像。

我在debugging模式下运行dockerd ,我看到:

 DEBU[0998] Calling GET /v1.22/images/codesource_buildbot/json ERRO[0998] Handler for GET /v1.22/images/codesource_buildbot/json returned error: No such image: codesource_buildbot 

所以看起来好像我已经设法让docker进入一个奇怪的状态,并且无法恢复到工作状态。

我已经尝试docker-compose down ,这也没有帮助。

Docker版本

 Client: Version: 17.03.1-ce API version: 1.27 Go version: go1.7.5 Git commit: c6d412e Built: Mon Mar 27 17:14:09 2017 OS/Arch: linux/amd64 Server: Version: 17.03.1-ce API version: 1.27 (minimum version 1.12) Go version: go1.7.5 Git commit: c6d412e Built: Mon Mar 27 17:14:09 2017 OS/Arch: linux/amd64 Experimental: false 

docker-compose版本:docker-compose version 1.12.0,build b31ff33

泊坞窗,compose.yml

 version: '2' services: buildbot: build: ./containers/buildbot ports: - "8010:8010" volumes: - "./containers/buildbot/volume:/code" 

Dockerfile

 FROM debian:latest WORKDIR /home RUN ["apt-get", "update"] RUN ["apt-get", "install", "-y", "python-dev"] RUN ["apt-get", "install", "-y", "python-pip"] RUN ["apt-get", "install", "-y", "git-all"] RUN ["pip", "install", "--upgrade", "pip"] RUN ["pip", "install", "--ignore-installed", "six"] RUN ["pip", "install", "service_identity"] RUN ["pip", "install", "buildbot[bundle]"] CMD bash wait_for_master.sh 

错误消息指出codesource_buildbot图像不存在。 你必须重build它或添加一个适当的build指令到你的docker-compose.yml

编辑:

PD:你的Dockerfile太复杂了。 你可以使用:

FROM debian:latest WORKDIR /home RUN apt-get update && \ apt-get install -y python-dev \ python-pip \ git-all && \ pip install --upgrade pip && \ pip install --ignore-installed six && \ pip install service_identity && \ pip install buildbot[bundle] CMD bash wait_for_master.sh

我会将--no-cache-dir添加到pip命令中,这样Zip文件就不会被caching,图像也会变小。