# コマンドラインで管理する 一部の運用者向けタスクは、Webアプリではなくコマンドラインで行います。このページでは、インスタンスを運用する際に実際に必要になりそうなartisanコマンドを、それぞれ詳しく説明しているページへのリンクとともに一覧にしています。 Dockerでのインストールでは、すべてのコマンドをwebコンテナ経由で実行します。 ``` docker compose exec app php artisan ``` ## 日常の運用 ### インスタンス管理者権限の付与と剥奪 ``` php artisan kollek:make-instance-administrator you@example.com php artisan kollek:make-instance-administrator you@example.com --revoke ``` 指定したメールアドレスのユーザーに、サーバー全体の管理者フラグを付与(または剥奪)します。インストール後、最初の管理者を用意する方法はこれです。[インスタンス管理者権限を付与する](https://getkollek.com/ja/docs/serufu-hosutingu/kanrisha-kengen-no-fuyo)を参照してください。 ### Webhookエンドポイントを作成する ``` php artisan kollek:create-webhook-endpoint you@example.com https://example.com/hooks --label="My receiver" ``` ユーザーのためにWebhookエンドポイントを登録し、そのIDと署名用シークレットを出力します。ユーザー自身がプロフィール設定から行うこともできます。なお、現時点ではWebhookを発火させるアプリケーションイベントはまだありません。[Webhook](https://getkollek.com/ja/docs/kaihatsusha-to-api/webhook)を参照してください。 ### 写真検索インデックスを再構築する ``` php artisan photos:rebuild-search-index ``` 写真ライブラリを支える検索インデックスを再構築し、不足している画像の寸法をさかのぼって補完します。写真画面が導入されたバージョンにアップグレードした後、一度だけ実行してください。何度実行しても安全で、ファイルが見つからない写真はスキップされ、それ以外には何も変更を加えません。[インスタンスをアップグレードする](https://getkollek.com/ja/docs/serufu-hosutingu/insutansu-no-appugureido)を参照してください。 ### アカウント検索インデックスを再構築する ``` php artisan search:rebuild-index ``` アカウント全体の検索を支えるインデックスを、アイテム、コレクション、コピー、写真、貸出、保管場所、セット、シリーズ、カテゴリ、タグ、書類にわたって再構築します。検索が導入されたバージョンにアップグレードした後、一度だけ実行してください。マイグレーションが作るのはテーブルだけで、中身を埋めるのはこのコマンドです。`--type=item` を付けると 1 種類のレコードだけを再構築します。何度実行しても安全で、インデックスがずれたときの対処法でもあります。[アカウント全体を検索する](https://getkollek.com/ja/docs/shuyo-kino/akaunto-zentai-o-kensaku)を参照してください。 ### Cloudflareのキャッシュを消す ``` php artisan kollek:purge-cloudflare-cache ``` Cloudflareが保持している公開ページをすべて破棄します。通常、これらのページは7日間Cloudflareのキャッシュから配信されます。失われるものはなく、各ページは次の訪問時に再びレンダリングされます。このコマンドには`CLOUDFLARE_API_TOKEN`と`CLOUDFLARE_ZONE_ID`が必要で、設定されていなければその旨を伝えます。同じボタンはパネルにもあり、[インスタンス管理パネル](https://getkollek.com/ja/docs/serufu-hosutingu/insutansu-kanri-paneru)で説明しています。 ### 翻訳用にロケールをひな形化する ``` php artisan kollek:localize fr_FR ``` アプリケーション内の翻訳可能な文字列をすべて抽出し、そのロケールの`lang/`配下のJSONファイルに同期します。[言語を追加する](https://getkollek.com/ja/docs/serufu-hosutingu/gengo-no-tsuika)を参照してください。 ## 開発用のみ コードベースにはあと2つコマンドがありますが、どちらも本番インスタンスで使うものではありません。`kollek:bruno`は、APIクライアントのテスト用にシードデータでデータベースをリセットするもので、実データを破壊してしまいます。`kollek:sync-skills`は、プロジェクト自身のツール群を保守するためのものです。運用者としては、どちらも気にする必要はありません。 :::warning 本番インスタンスで`kollek:bruno`を絶対に実行しないでください。データベースを消去し、デモデータで再シードします。 ::: ## 次に読むべきもの - [インスタンス管理者権限を付与する](https://getkollek.com/ja/docs/serufu-hosutingu/kanrisha-kengen-no-fuyo)で、最初の管理者を用意しましょう。 - [インスタンスをアップグレードする](https://getkollek.com/ja/docs/serufu-hosutingu/insutansu-no-appugureido)で、インスタンスを最新の状態に保ちましょう。 - [言語を追加する](https://getkollek.com/ja/docs/serufu-hosutingu/gengo-no-tsuika)で、インターフェースを翻訳しましょう。