我使用这个映像挂载一个unionfs文件系统。当我使用docker run运行容器时,它工作得很好,但是当我将相同的条件放入docker-compose中时,它就不能工作了。这似乎是一个环境变量的问题(我怀疑)。
docker-撰写配置:
unionfs:
container_name: unionfs
image: meyay/unionfs-mount:alpha
environment:
- TZ=Europe/Berlin
- PUID=1000
- GUID=1000
- READ_ONLY_DIR="/read-only/m/ro"
- READ_WRITE_DIR="/read-write/m/rw"
privileged: true
volumes:
- /home/ubuntu/sshfs:/read-write:slave
- /mnt/gdrive:/read-only:slave
- /mnt/unionfs/tvs:/merged:shareddocker-compose up给出了容器中的错误:Failed to open /run/s6/services/unionfs/"/read-write/m/rw"/: No such file or directory. Aborting!
如果我使用docker run运行相同的映像
docker run --rm \
--name unionfs \
-e TZ="Europe/Berlin" \
-e PUID=1000 \
-e GUID=1000 \
-e READ_ONLY_DIR="/read-only/m/ro" \
-e READ_WRITE_DIR="/read-write/m/rw" \
--privileged \
-v /home/ubuntu/sshfs:/read-write:slave \
-v /mnt/gdrive:/read-only:slave \
-v /mnt/unionfs/tvs:/merged:shared \
meyay/unionfs-mount:alpha然后,unionfs挂载将成功地挂载。为什么会发生这种事?他们都是一样的,对吧?
发布于 2020-08-18 09:29:12
这里的问题是引号,当您在yaml-文件中指定变量时,它们被不同的对待。
你需要这样写:
unionfs:
container_name: unionfs
image: meyay/unionfs-mount:alpha
environment:
- TZ=Europe/Berlin
- PUID=1000
- GUID=1000
- "READ_ONLY_DIR=/read-only/m/ro"
- "READ_WRITE_DIR=/read-write/m/rw"
privileged: true
volumes:
- /home/ubuntu/sshfs:/read-write:slave
- /mnt/gdrive:/read-only:slave
- /mnt/unionfs/tvs:/merged:shared也可以参考这个问题。
我刚在GitHub上找到了GitHub。
https://stackoverflow.com/questions/63465472
复制相似问题