繁体   English   中英

如何修改 wordpress docker 卷中的文件?

[英]How to modify files in wordpress docker volume?

这是我的 wordpress 的 docker docker-composer.yml

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组,我也无权修改或创建文件。


我的研究:

  • 我在写入共享卷 docker 时发现有人遇到了相反的问题,他创建了文件,而他的 docker 映像无法访问它。 解决方案似乎是运行 docker 并使用用户www-data创建一个文件 - 但我不知道如何将其应用于我的问题。

  • 我试图在 docker docker-composer.yml的 worpdress 服务中添加user: "1000:1000 ,希望 docker 设置的所有文件权限都来自我的用户。但是,我得到了 1000 行这种形式的错误:

wordpress_1 | tar: ./wp-admin: 不能 mkdir: 权限被拒绝 wordpress_1 | tar:./wp-admin/options-reading.php:无法打开:没有这样的文件或目录

我最终只是将所有文件和文件夹的文件权限从文件夹all更改为 777 递归。 由于这只是本地开发,因此不涉及任何风险。

当我从我的主机创建一个新文件时,它只有 644 权限,即它可以从 localhost 读取但不能编辑,因为我需要手动将权限更改为 777。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM