簡體   English   中英

如何使用容器的所有者 www-data 用戶使用 docker-compose 掛載卷?

[英]How to mount a volume with docker-compose with owner www-data user of the container?

我有我的 docker-compose,如下所示

  "kj_wordpress":
    image: kristijorgji/wordpress-php-7.1:0.0.0
    volumes:
      - ${KJ_WORDPRESS_PATH}:/var/www/html/app
    restart: on-failure
    container_name: "kj_wordpress"

這工作正常,我可以訪問一個 wordpress 站點。 問題是 nginx (www-data) 的用戶無法訪問wp-contents/uploads寫入權限,並且無法在那里上傳圖像。

我可以通過輸入正在運行的容器中手動修復它

docker-compose exec kj_wordpress /bin/bash

然后運行

chown -R www-data wp-content/uploads/

這很好用。

現在我想自動化這個過程,而不必在每次創建和運行容器時都運行它。

我怎樣才能讓www-data用戶 ot - ${KJ_WORDPRESS_PATH}:/var/www/html/app

所以容器路徑/var/www/html/app

兩年前我有類似的問題。 選項很少,我測試了標記的答案,直到某個時候。

Docker-compose 和命名卷權限被拒絕

這就是我稍后使用 docker 組合的方式。

    files-init:
        image: alpine
        restart: "no"
        entrypoint: |
            /bin/sh -c "chown myuser:myuser /path/to/folder"
        volumes:
            - logs:/path/to/folder
    service-logs:
        image: alpine
        depends_on:
            - files-init
    volumes:
        logs:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM