【发布时间】:2023-03-16 07:39:01
【问题描述】:
我正在尝试使用 docker-compose 为我的 Web 应用程序创建一个 docker 映像。我的 Web 应用程序需要权限才能在文件系统上写入文件。
我的 Dockerfile 包含
# some other stuff
RUN addgroup -S web && adduser -S -g web web
USER web
我想将我当前的.目录挂载到docker容器中的/code;
当我执行docker-compose build && docker-compose up 时,我的容器中的/code 目录属于用户“1000:1000”,而不是我在 Dockerfile 中创建的用户。
version: '2'
services:
admin:
build:
context: .
dockerfile: Dockerfile
command: python manage.py 0.0.0.0 8030
volumes:
- .:/code
ports:
- 9000:8030
stdin_open: true
tty: true
volumes:
.:
driver_opts:
o: uid=100,gid=65533
如您所见,我尝试使用我的用户 uid 和 gid 参数传递 driver_opts;但它没有帮助。
我的问题是:我应该怎么做才能将我的目录 . 挂载到用户 web 的 docker 容器权限中的 /code?
操作系统:Ubuntu 16.04
docker 版本 17.09.0-ce
docker-compose 版本 1.8.0
【问题讨论】:
标签: docker docker-compose