Fri*_*erg 6 php nginx laravel docker
我正在使用 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/"
Run Code Online (Sandbox Code Playgroud)
我的 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;
}
}
Run Code Online (Sandbox Code Playgroud)
亲切的问候 :)
进入php-fpm容器:
docker-compose -i -t exec php-fpm /bin/sh
Run Code Online (Sandbox Code Playgroud)
然后更改存储文件夹的访问权限:
chmod -r 777 /home/html/storage
Run Code Online (Sandbox Code Playgroud)
因为它是本地开发环境,正确的权限并不重要。
归档时间: |
|
查看次数: |
9659 次 |
最近记录: |