无法创建tarball:archive / tar:写得太久了

时间:2018-04-11 19:33:06

标签: docker kubernetes docker-compose kompose

我正在尝试使用kompose up运行docker-compose文件。我在Mac OS High Sierra上运行最新和最好的版本(Docker CE 17.12.0,VirtualBox 5.2.8和kompose 1.11.0)。

我的docker-compose文件是:

version: '2'

services:
  es:
    build: ./elastic-search
    image: horcle/es
    ports:
     - "9200:9200"
     - "9300:9300"  
    volumes:
     - ./data:/elasticsearch/data
  tab:
    build: ./nlp-tab
    image: horcle/nlptab
    ports:
     - "8000:8000"
    volumes:
     - ./data:/app/data

当我运行kompose up时,第一个图像被成功构建并推送到Docker.io。但是,我在第二张图片上收到以下错误:FATA Error while deploying application: k.Transform failed: Unable to build Docker image for service tab: Unable to create a tarball: archive/tar: write too long

我用Google搜索了,问题似乎与符号链接有关,这些符号链接在我用来构建此图像的目录中没有。

作为测试,我做了docker build -t horcle/nlptab .,然后使用docker push horcle/nlptab成功推送到Docker.io。此外,docker-compose up运行也很好。

我不确定为什么我不能运行kompose up做同样的事情。

2 个答案:

答案 0 :(得分:1)

您是否已经找到解决方案?如果没有,请尝试在命令下面运行,并找出是否存在任何符号链接。 ls -laR . | grep -B 5 " -> "

这可以帮助您从node_modules(例如可能使用符号链接的文件夹)中找到依赖项。

答案 1 :(得分:0)

我在Node.js项目中遇到了这个问题。删除node_modules文件夹(rm -rf node_modules)对我来说是固定的。