我有一個使用Apache運行的docker容器。這是以root用戶的docker-compose開始的。在這個容器中,de webserver在默認用戶www-data下運行。通過conjob我觸發php腳本上傳圖片。如果cronjob在根目錄下運行,這工作正常。但我希望在www-data下運行conjob,所以上傳的文件與通過apache直接上傳的文件具有相同的所有者。如果不在根目錄下運行,Docker cronjob權限不正確
我用下面的cronjob(這工作):
*/1 * * * * docker exec apache_1 php /var/www/import
但是,當我改變的cronjob用戶WWW的數據(不再次觸發):
*/1 * * * * www-data docker exec apache_1 php /var/www/import
有了上次的cronjob容器內的php腳本不再被觸發。我相信它與權限設置有關?
www-data無法運行docker命令(默認情況下) – Robert
sudo groupadd docker – thomasmeadows
'php'仍然會以root身份運行,因爲默認情況下,docker會這樣做 – Robert