phpbu/phpbu-laravel

Laravel 备份包 - 将 phpbu 与 Laravel artisan 命令行工具集成

3.0.5 2023-03-01 09:03 UTC

This package is auto-updated.

Last update: 2024-08-29 12:12:26 UTC


README

Laravel 备份包 - 将 phpbu 与 Laravel artisan 命令行工具集成。

更详细的文档可以在 phpbu 的 手册 中找到。

Latest Stable Version License Build Status Scrutinizer Code Quality Code Coverage

功能

  • 创建备份
    • 目录
    • MySQL
  • 验证备份
    • 检查最小大小
    • 与之前的备份比较
  • 同步备份到其他位置
    • 所有 Laravel 文件系统
  • 清理备份位置
    • 删除 x 之前的备份
    • 只存储 x MB 的备份
    • 只保留最后 x 个备份

要求

  • PHP 7.0
  • Laravel 5.*
  • phpbu 5.*
  • 有关更多详细信息,请参阅 phpbu 的要求

安装

使用 composer 安装包。

composer require phpbu/phpbu-laravel

将包的 ServiceProvider 添加到您的 config/app.php 配置文件中。

'providers' => [
    ...
    /*
     * phpbu Backup Service Providers...
     */
    phpbu\Laravel\ServiceProvider::class,
];

最后,通过发布包创建配置框架。

php artisan vendor:publish --provider="phpbu\Laravel\ServiceProvider"

配置

在发布 ServiceProvider 后,在您的 config 目录中创建一个 phpbu.php 配置文件。

<?php
return [
    /*
    |--------------------------------------------------------------------------
    | laravel configuration
    |--------------------------------------------------------------------------
    |
    | This is activated as long as you don't specify a phpbu
    | configuration file at the bottom.
    |
    */

    // no directories to backup
    // keep at least the empty array 'directories' => []

    'directories' => [
        [
            'source' => [
                'path'    => storage_path('app'),
                'options' => [],
            ],
            'target' => [
                'dirname'     => storage_path('/backup/app'),
                'filename'    => 'app-%Y%m%d-%H%i.tar',
                'compression' => 'bzip2',
            ],
            'sync' => [
                'filesystem' => 's3',
                'path'       => '/backup/app',
            ]
        ]
    ],

    // no databases to backup
    // keep at least the empty array 'databases' => []

    'databases' => [
        [
            'source' => [
                'connection' => 'mysql',
                'options'    => []
            ],
            'target' => [
                'dirname'     => storage_path('backup/db'),
                'filename'    => 'dump-%Y%m%d-%H%i.sql',
                'compression' => 'bzip2',
            ],
            'sync' => [
                'filesystem' => 's3',
                'path'       => '/backup/db',
            ]
        ],
    ],
    'config' => __FILE__,

    /*
    |--------------------------------------------------------------------------
    | phpbu configuration
    |--------------------------------------------------------------------------
    |
    | Path to a phpbu configuration file.
    | You can use a phpbu.xml or phpbu.json configuration.
    | If you use one of those the configuration above will be ignored.
    | This is deactivated by default so you can setup your backup using
    | the configuration above
    */

    'phpbu' => null,
];

使用方法

显示命令帮助信息。

php artisan phpbu:backup --help

执行备份,

php artisan phpbu:backup

执行不带更改的 dry-run。

php artisan phpbu:backup --phpbu-simulate