我正在尝试设置一堆应该能够到rw
docroot 的 apache-php 容器,以及一个也应该能够到rw
同一目录的 sftp 容器。因此,计划是创建一个共享卷,并将其安装在两个容器中(对于 sftp 容器,显然是在不同的位置)。我修改了官方的 php:7-apache 启动脚本,如下所示:
#!/bin/bash
set -e
### > My stuff
chmod g+s /var/www/html
chown -R :2048 /var/www/html
umask
umask 0002
umask
### < My stuff
# Apache gets grumpy about PID files pre-existing
rm -f /var/run/apache2/apache2.pid
exec apache2 -DFOREGROUND
事实上,这两条umask
线证实了夹层umask 0002
运行正确。但是,当我bash
进入容器并自己测试时,umask
返回022
,如果我创建任何文件,它们实际上会获得权限644
。然后我可以手动umask 0002
创建任何具有权限664
(和775
目录)的新文件。
对于这个用例,两个容器(sftp 和 apache)都可以在共享卷中读写是至关重要的。那么,我该怎么做呢?