我正试图在码头上创建一个工作流。这很简单:只需用PHP和MySQL进行小测试。
我的docker-compose.yml
web:
build: .docker
links:
- mysql:mysql
ports:
- "80:80"
- "443:443"
volumes:
- ./public_html:/var/www/html
mysql:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=root
volumes:
- "./.data/db:/var/lib/mysql"
phpmyadmin:
image: phpmyadmin/phpmyadmin
ports:
- "8080:80"
links:
- mysql:mysql
environment:
- PMA_HOST=mysql
volumes:
- /sessions和我的文档
FROM php:5.6-apache
RUN docker-php-ext-install mysqli没关系:我可以打开容器,但是PHP本身不能在目录中写入(比如fwrite()或类似的)。
我做了很多研究,尝试了很多教程,但什么都没有.
发布于 2016-10-07 20:29:30
Apache与用户www-data一起运行PHP,此用户需要对主机目录./public_html具有写访问权限。
要解决这个问题,请转到您的docker目录并执行以下命令,以更改您的public_html目录的所有者和其中的所有文件。
sudo chown -R www-data:www-data public_html之后,您需要允许组"www-data“中的用户编辑文件。
# To change all the directories to 775
# (write for user & group www-data, read for others):
find public_html -type d -exec chmod 775 {} \;
# To change all the files to 664
# (write for user & group www-data, read for others):
find public_html -type f -exec chmod 664 {} \;为了让当前用户编辑这些文件,需要将其添加到www-data组中:
sudo usermod -aG www-data $USERhttps://stackoverflow.com/questions/39842112
复制相似问题