目次 |
---|
LaravelでソースコードやDBのバックアップを取りたい場合は
Laravel-backupを利用するのが便利なので実装方法を記載していきます。
Laravel-backupをインストール
$ composer require spatie/laravel-backup
設定ファイル作成
$ php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider
実行すると「/config/backup.php」という設定ファイルが作成されます。
バックアップの保存先の指定
デフォルトではバックアップはローカルに保存されるようになっています。
今回はこれをS3に変えてみます。
'destination' => [
(省略)
/*
* The disk names on which the backups will be stored.
*/
'disks' => [
// local
's3',
],
],
バックアップ実行
$ php artisan backup:run
上記コマンドの実行でソースコードとDBをS3にzip形式で保存してくれます。
ちなみに以下のコマンドだとDBのみのバックアップを取ることも可能です。
$ php artisan backup:run --only-db
古いバックアップファイルの削除
バックアップを取り続けているとストレージの容量を圧迫してしますので古いファイルから削除していきたいです。
Laravel-backupではその機能も用意されており、以下のコマンドを実行すれば古いファイルを削除してくれます。
$ php artisan backup:clean
定期的にバックアップを実行する
/app/Console/Kernel.phpに毎日実行するように登録します。
$schedule->command('backup:clean')->daily();
$schedule->command('backup:run')->daily();
これで毎日バックアップをとるようになりました!
いざという時に困らないようバックアップは常に取得しておきましょう!