[英]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.