【发布时间】:2020-07-05 13:13:59
【问题描述】:
这是我的 docker-composer.yml 用于 wordpress:
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
volumes:
- ./all:/var/www/html
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
ports:
- "8084:80"
links:
- db:db
volumes:
db_data: {}
文件夹all 包含所有从 wordpress docker 镜像中发布的文件。但是,他们都有用户/组 www-data:www-data 并且文件的权限是 644 和来自文件夹 755,即即使我将自己添加到 www-data 组,我也无权修改或创建文件。
我的研究:
-
我在write in shared volumes docker 发现有人遇到了相反的问题,他创建了文件并且他的 docker 映像无法访问它。解决方案似乎是运行 docker 并使用用户
www-data创建一个文件 - 但我不知道如何将其应用于我的问题。 -
我尝试在
docker-composer.yml内的worpdress 服务中添加user: "1000:1000,希望docker 设置的所有文件权限都来自我的用户。但是,我得到了 1000 行这种形式的错误:
wordpress_1 | tar: ./wp-admin: 不能 mkdir: 权限被拒绝 wordpress_1 | tar:./wp-admin/options-reading.php:无法打开:没有这样的文件或目录
【问题讨论】:
标签: wordpress docker docker-compose