【问题标题】:docker-compose creates directory instead of filedocker-compose 创建目录而不是文件
【发布时间】:2019-09-10 20:10:36
【问题描述】:

我正在尝试使用一些 docker 容器和 docker-compose 设置我的家庭服务器(Ubuntu 18.04 LTS)。尝试设置“transmission-rss”时出现以下错误:

/usr/local/lib/ruby/2.6.0/psych.rb:577:in `initialize': Is a directory @ io_fillbuf - fd:5 /etc/transmission-rss.conf (Errno::EISDIR)

当我去检查 transmission-rss.conf 文件是否已创建时,在其位置创建了一个同名目录。

我必须使用sudo 运行docker-compose up 命令,所以我不知道这是否与权限有关。

这是我当前的 docker-compose.yml 文件:

version: '3'
services:
  portainer:
    container_name: portainer
    image: portainer/portainer
    volumes:
      - '/home/miguel/docker/portainer/data/:/data'
      - '/home/miguel/docker/portainer/socket/:/var/run/docker.sock'
    ports:
      - "9000:9000"
    restart: always
  transmission-rss:
    container_name: transmission-rss
    image: nning2/transmission-rss:latest
    volumes:
      - '/home/miguel/docker/transmission-rss/transmission-rss.conf/:/etc/transmission-rss.conf/'
    restart: unless-stopped

portainer 容器启动正常。

非常感谢, 米格尔

【问题讨论】:

    标签: docker docker-compose ubuntu-18.04


    【解决方案1】:

    确保文件存在在两侧(主机内部和容器内部)。

    如果其中一个不存在然后docker 创建一个目录而不是一个文件

    【讨论】:

      【解决方案2】:

      - '/home/miguel/docker/transmission-rss/transmission-rss.conf/:/etc/transmission-rss.conf/'

      请删除尾部斜杠(有 2 个!)并确保 transmission-rss.conf 是一个文件,而不是您的主机源上的一个 dir

      稍微全面一点:

      1. 按照此操作以避免将 sudo 与 docker-compose 一起使用:https://docs.docker.com/install/linux/linux-postinstall这不是您的问题的原因,但必须在每个命令前加上 sudo,这很烦人,基本上只需要将你的用户添加到 docker 组)。
      2. 更新docker-compose.yml,从transmission-rss.conf 的源和目标中删除尾部斜杠。
      3. 如果需要,请在备份数据后删除现有卷 (docker volume ls + docker volume rm volume_name)。
      4. 在您的主机(运行docker-compose 命令的机器)上,确保文件存在,并且 目录
      5. docker-compose down
      6. docker-compose build
      7. docker-compose up

      【讨论】:

      • 只是补充一下;特别是“确保文件存在”部分,请仔细检查您的本地(主机)路径是否正确。有时,即使是我们中最好的人,拼写错误、额外的子文件夹等也会漏掉。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-10
      • 2011-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      相关资源
      最近更新 更多