音量 docker 和 wordpress 的权限
permission with volume docker and wordpress
我已经创建了一个 docker-composer.yml 文件到 运行 wordpress mysql 和 phpmyadmin 的容器。它开始很好,但我有一个权限问题。我所有的文件都有 www-data:www-data 用于用户和组,当我想在 wp-content 中创建一个新主题时,我的权限被拒绝了。我在 ubuntu 18.04。
这是我的 docker-compose.yml 文件:
version: '3'
services:
# Database
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
networks:
- wpsite
# phpmyadmin
phpmyadmin:
depends_on:
- db
image: phpmyadmin/phpmyadmin
restart: always
ports:
- '8080:80'
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: password
networks:
- wpsite
# Wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- '8000:80'
restart: always
volumes: ['./:/var/www/html']
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
networks:
- wpsite
networks:
wpsite:
volumes:
db_data:
我尝试更改为 "chown -Rf myname:myname ." 这样我就可以创建一个文件,但是现在无法在 wordpress 中上传文件。所以我想知道如何在 ubuntu.
中使用 docker 安装卷正确设置权限
一个解决方案是将您自己的用户 myname
添加到 www-data
组
sudo usermod -aG www-data myname
并确保 www-data 组对所有目录具有写入权限 files/directories 并对目录具有执行权限。
另一种解决方案是让您自己的用户拥有所有文件(myname:www-data
作为所有者)和目录,并确保 www-data
组具有适当的 read/write 权限,以便 WordPress 容器的网络服务器可以对 read/write 个文件使用组权限。
题外话:还要确保有一个
define('FS_METHOD', 'direct');
行在你的 wp-config.php
.
我已经创建了一个 docker-composer.yml 文件到 运行 wordpress mysql 和 phpmyadmin 的容器。它开始很好,但我有一个权限问题。我所有的文件都有 www-data:www-data 用于用户和组,当我想在 wp-content 中创建一个新主题时,我的权限被拒绝了。我在 ubuntu 18.04。
这是我的 docker-compose.yml 文件:
version: '3'
services:
# Database
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
networks:
- wpsite
# phpmyadmin
phpmyadmin:
depends_on:
- db
image: phpmyadmin/phpmyadmin
restart: always
ports:
- '8080:80'
environment:
PMA_HOST: db
MYSQL_ROOT_PASSWORD: password
networks:
- wpsite
# Wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- '8000:80'
restart: always
volumes: ['./:/var/www/html']
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
networks:
- wpsite
networks:
wpsite:
volumes:
db_data:
我尝试更改为 "chown -Rf myname:myname ." 这样我就可以创建一个文件,但是现在无法在 wordpress 中上传文件。所以我想知道如何在 ubuntu.
中使用 docker 安装卷正确设置权限一个解决方案是将您自己的用户 myname
添加到 www-data
组
sudo usermod -aG www-data myname
并确保 www-data 组对所有目录具有写入权限 files/directories 并对目录具有执行权限。
另一种解决方案是让您自己的用户拥有所有文件(myname:www-data
作为所有者)和目录,并确保 www-data
组具有适当的 read/write 权限,以便 WordPress 容器的网络服务器可以对 read/write 个文件使用组权限。
题外话:还要确保有一个
define('FS_METHOD', 'direct');
行在你的 wp-config.php
.