如何在非默认路径运行Laravel Sail?权限问题求助
在非默认路径运行Laravel Sail的解决方案
可以在非默认路径运行Laravel Sail,你遇到的权限问题是因为容器内的工作目录、卷映射未正确配置,加上新路径下的storage目录权限不足导致的。按以下步骤操作:
1. 修正docker-compose.yml配置
找到项目根目录下的docker-compose.yml,修改laravel.test服务的卷映射和工作目录:
services: laravel.test: # 保留其他原有配置,修改以下两项 volumes: - '.:/srv/http' # 将本地项目根目录映射到容器内的/srv/http working_dir: /srv/http # 设置容器的工作目录为/srv/http
2. 重建容器镜像
修改配置后,需要重新构建镜像以应用新的工作目录设置:
sail build --no-cache sail up -d
3. 修复容器内storage目录权限
容器启动后,执行命令赋予sail用户对新路径下storage目录的权限:
sail exec laravel.test chown -R sail:sail /srv/http/storage sail exec laravel.test chmod -R 775 /srv/http/storage
4. 检查.env配置(可选)
如果你的.env文件中配置了绝对路径的日志路径(比如LOG_PATH=/var/www/html/storage/logs/laravel.log),需要修改为相对路径:
LOG_PATH=storage/logs/laravel.log
完成以上步骤后,Laravel Sail应该就能在/srv/http路径下正常运行,日志权限问题也会解决。
内容的提问来源于stack exchange,提问作者Jack Jones
相关产品推荐
相关产品推荐

