コマンドラインで管理する

一部の運用者向けタスクは、Webアプリではなくコマンドラインで行います。このページでは、インスタンスを運用する際に実際に必要になりそうなartisanコマンドを、それぞれ詳しく説明しているページへのリンクとともに一覧にしています。

Dockerでのインストールでは、すべてのコマンドをwebコンテナ経由で実行します。

docker compose exec app php artisan <command>

日常の運用

インスタンス管理者権限の付与と剥奪

php artisan kollek:make-instance-administrator you@example.com
php artisan kollek:make-instance-administrator you@example.com --revoke

指定したメールアドレスのユーザーに、サーバー全体の管理者フラグを付与(または剥奪)します。インストール後、最初の管理者を用意する方法はこれです。インスタンス管理者権限を付与するを参照してください。

Webhookエンドポイントを作成する

php artisan kollek:create-webhook-endpoint you@example.com https://example.com/hooks --label="My receiver"

ユーザーのためにWebhookエンドポイントを登録し、そのIDと署名用シークレットを出力します。ユーザー自身がプロフィール設定から行うこともできます。なお、現時点ではWebhookを発火させるアプリケーションイベントはまだありません。Webhookを参照してください。

写真検索インデックスを再構築する

php artisan photos:rebuild-search-index

写真ライブラリを支える検索インデックスを再構築し、不足している画像の寸法をさかのぼって補完します。写真画面が導入されたバージョンにアップグレードした後、一度だけ実行してください。何度実行しても安全で、ファイルが見つからない写真はスキップされ、それ以外には何も変更を加えません。インスタンスをアップグレードするを参照してください。

アカウント検索インデックスを再構築する

php artisan search:rebuild-index

アカウント全体の検索を支えるインデックスを、アイテム、コレクション、コピー、写真、貸出、保管場所、セット、シリーズ、カテゴリ、タグ、書類にわたって再構築します。検索が導入されたバージョンにアップグレードした後、一度だけ実行してください。マイグレーションが作るのはテーブルだけで、中身を埋めるのはこのコマンドです。--type=item を付けると 1 種類のレコードだけを再構築します。何度実行しても安全で、インデックスがずれたときの対処法でもあります。アカウント全体を検索するを参照してください。

Cloudflareのキャッシュを消す

php artisan kollek:purge-cloudflare-cache

Cloudflareが保持している公開ページをすべて破棄します。通常、これらのページは7日間Cloudflareのキャッシュから配信されます。失われるものはなく、各ページは次の訪問時に再びレンダリングされます。このコマンドにはCLOUDFLARE_API_TOKENCLOUDFLARE_ZONE_IDが必要で、設定されていなければその旨を伝えます。同じボタンはパネルにもあり、インスタンス管理パネルで説明しています。

翻訳用にロケールをひな形化する

php artisan kollek:localize fr_FR

アプリケーション内の翻訳可能な文字列をすべて抽出し、そのロケールのlang/配下のJSONファイルに同期します。言語を追加するを参照してください。

開発用のみ

コードベースにはあと2つコマンドがありますが、どちらも本番インスタンスで使うものではありません。kollek:brunoは、APIクライアントのテスト用にシードデータでデータベースをリセットするもので、実データを破壊してしまいます。kollek:sync-skillsは、プロジェクト自身のツール群を保守するためのものです。運用者としては、どちらも気にする必要はありません。

警告

本番インスタンスでkollek:brunoを絶対に実行しないでください。データベースを消去し、デモデータで再シードします。

次に読むべきもの

KolleK のドキュメント このページを GitHub で編集
このページは役に立ちましたか?