【发布时间】:2018-07-17 14:19:36
【问题描述】:
我正在设置一个 wordpress 堆栈并拥有跨文件权限。
当使用docker-compose up 权限似乎不是问题,但是当使用本地 docker swarm 和使用docker stack deploy 时,nginx 给我一个403 文件权限错误。在检查 nginx:alpine 容器和 wordpress:php7.1-fpm-alpine 容器时,我确实看到容器每个都有不同的权限,在 nginx 端,它将 var/www/html 中的文件标记为用户和组 ID 82 拥有,而在 php7.1 上,它们归 www-data 所有。
如何确保跨容器的权限正确?文件正在从主机绑定挂载。
```
version: '3'
services:
nginx:
depends_on:
- wordpress
image: private/nginx
build:
context: ./stack/nginx
volumes:
- "wordpress:/var/www/html"
ports:
- 80:80
wordpress:
depends_on:
- mysql
image: private/wordpress
build:
context: ./stack/wordpress
volumes:
- "wordpress:/var/www/html"
environment:
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: password
mysql:
image: mariadb
volumes:
- "mysql:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: password
volumes:
wordpress:
driver: local
driver_opts:
type: none
o: bind
device: "${PWD}/wordpress"
mysql:
```
【问题讨论】:
标签: docker file-permissions docker-volume