我正在使用docker compose启动一个开发工作区,包括php,nginx和mysql,所有的东西都可以启动,静态html可以使用,但是当我尝试启动一个laravel应用程序时,我得到了以下错误:
无法打开流或文件"/home/html/storage/logs/laravel-2019 - 06 - 10. log ":无法打开流:权限被拒绝
我四处搜索,看起来像是权限问题??请注意,只有数据库和PHP服务器中的构建的Docker似乎确实可以工作。
我的docker-compose. yml
version: "3"
services:
db:
image: mysql
command: --default-authentication-plugin=mysql_native_password
restart: always
environment:
MYSQL_ROOT_PASSWORD: "root"
ports:
- 3306:3306
php-fpm:
image: php:7.3-fpm-alpine
links:
- db
volumes:
- "./:/home/html/"
nginx:
image: nginx:1-alpine
ports:
- "8080:80"
links:
- php-fpm
volumes:
- "./site.conf:/etc/nginx/conf.d/default.conf"
- "./:/home/html/"
我的nginx配置:
server {
index index.php index.html;
listen 80 default_server;
error_log /var/log/nginx/error.log;
access_log /var/log/nginx/access.log;
root /home/html/public;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php-fpm:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
此致:)
1条答案
按热度按时间yrefmtwq1#
输入php-fpm容器:
然后更改存储文件夹的访问权限:
因为这是当地的发展环境,正确的权利并不重要。