laravel - Laradock 上的 Spatie Laravel 备份无法打开目录容器数据/mysql/#innodb_temp 权限被拒绝
问题描述
我在 Laradock(Docker 容器)上的 Laravel 应用程序上使用 Spatie 的 Laravel Backup。
使用此软件包,您可以运行手动备份或安排它。
手动备份确实有效。
首先我进入容器,然后运行手动备份:
$ docker exec -it workspace bash
/var/www# artisan backup:run
Starting backup...
Dumping database superDB...
Determining files to backup...
Zipping 5111 files and directories...
Created zip containing 5111 files and directories. Size is 80.08 MB
Copying zip to disk named backup...
Successfully copied zip to disk named superBU.
Backup completed!
但是,计划的备份不起作用
$schedule->command('backup:run')->sundays()->at('11:11');
因为它抛出以下错误异常:
RecursiveDirectoryIterator::__construct(/var/www/laradock/containers-data/mysql/#innodb_temp):无法打开目录:权限被拒绝
异常跟踪:#0 /var/www/vendor/spatie/laravel-backup/src/Tasks/Backup/FileSelection.php(109): Symfony\Component\Finder\Iterator\RecursiveDirectoryIterator->getChildren() #1 /var/ www/vendor/spatie/laravel-backup/src/Tasks/Backup/Manifest.php(41): Spatie\Backup\Tasks\Backup\FileSelection->selectedFiles() #2 /var/www/vendor/spatie/laravel-备份/src/Tasks/Backup/BackupJob.php(176): Spatie\Backup\Tasks\Backup\Manifest->addFiles() #3 /var/www/vendor/spatie/laravel-backup/src/Tasks/Backup/ BackupJob.php(146): Spatie\Backup\Tasks\Backup\BackupJob->createBackupManifest() #4 /var/www/vendor/spatie/laravel-backup/src/Commands/BackupCommand.php(56): Spatie\Backup \Tasks\Backup\BackupJob->运行()
存储文件夹具有以下权限:
drwxrwxr-x. 8 root laradock 90 Sep 01 13:00 storage
文件夹内storage/
有两个文件夹来实现备份:
drwxr-xr-x. 3 laradock www-data 50 Sep 02 10:56 backups
drwxr-xr-x. 2 laradock www-data 3 Oct 02 11:06 backup-temp
该containers-data/mysql/
文件夹具有以下权限:
drwxr-x---. 2 999 www-data 187 Aug 10 23:01 '#innodb_temp'
任何人都可以对此有所了解吗?为什么计划的备份不起作用?为什么只有手动备份“工匠备份:运行”有效?
我已经检查了这个问题,还没有给出答案。
我还没有尝试过这个 GitHub 答案,其中建议将所有权更改为
$ sudo docker-compose exec workspace bash
# chown -R laradock:laradock /var/www/
这个另一个答案告诉如何laradock
在容器内测试用户。.
解决方案
推荐阅读
- python - 我可以在运行时将 Jenkins 作业阶段添加到管道吗?
- mysql - DROP Table 正在为元数据锁定 MYSQL 提供状态
- laravel - Vue.js/Laravel:将类别 ID 传递给 Vue.js 组件
- javascript - 即使事件是由其子元素触发的,如何仅在父元素上执行回调?
- python - Pandas数据框列值与列表中的元素明智数值比较
- python-3.x - 与 Django 模型中的 postgresql uuid DEFAULT uuid_generate_v4() 有什么相似之处?
- python-3.x - 如何在 Python 中处理大 WAV 文件而不会出现内存错误?
- css - 在 CSS 动画中根据其长度移动文本
- python-3.x - 计算数据框的给定列集中的非零列数 - 熊猫
- angular - Storybook 中的 Angular FormGroup:将圆形结构转换为 JSON