在没有noexec选项的情况下将卷装入Docker容器

时间:2019-04-29 11:35:25

标签: docker docker-compose

当我侦察时,docker(也包括docker-compose)使用noexec选项将卷安装到容器中,因此我无法从安装目录内部启动任何程序。


services:
  app:
    build:
      context: .
      dockerfile: Dockerfile.development
    command: sh -c "rm -f tmp/pids/server.pid && /app/bin/rails s -b 0.0.0.0"
    env_file:
      - .env
    ports:
      - "3000:3000"
    volumes:
      - .:/app:cached

因此,在容器内部,我们可以看到/ app已安装 /dev/sdb1 on /app type ext4 (rw,nosuid,nodev,noexec,relatime,data=ordered)

是否存在某种无需此选项即可挂载卷的方法? 我在文档中进行了搜索,但一无所获

1 个答案:

答案 0 :(得分:0)

听所有!关闭!

我拍自己的腿。 这个问题是因为我将/ home和/ var / lib / docker移到了磁盘的专用分区(因为缺少磁盘空间),并且默认情况下它们是由Linux使用noexec选项安装的。

Docker只是在容器内重新翻译了

相关问题