cronジョブ
弊社のインフラストラクチャでは、コンテナ技術を採用しており、すべてのサイトが独自のcrontabを持つ隔離されたコンテナで実行されます。そのため、各サイトのコンテナでサーバーのcronジョブを設定することができます。
WordPress既存のcronジョブを使用する方法はこちらをご覧ください。
サーバーのcron設定を記述する
crontabで指定するタスクは、以下2つの要素で構成されます。
- cronが実行される頻度を定義する一連の数字とアスタリスク
- サーバーで実行されるコマンド
cronを記述する際は、実行したいコマンドと実行頻度の2つを定義します。
お客様自身でcrontabの構文を記述する場合には、cronとその実践的な使用事例を学ぶことができる、Open Groupのcrontabに関するページをご覧ください。
コマンドが既に手元にあり、それを実行するcrontabの構文を作成するには、無料ツールを使用することができます。Crontab Generatorがおすすめです。
サーバーのcron設定を追加する
cronジョブの準備が整ったら、以下のいずれかの方法でコンテナに追加することができます。
- お客様自身でcrontabにcronジョブをアップロードする
- 弊社カスタマーサポートに依頼して、crontabにcronジョブをアップロードする
お客様自身でcronジョブをアップロードする場合は、以下の手順に従ってください。
- SSHでサイトコンテナにアクセスします
- 以下のコマンドを実行します
crontab -e
- 任意のテキストエディターを開きます(特にこだわりがなければnanoがお勧めです)
- ファイルの最後にcronコマンドを貼り付けます
- ファイルを閉じると、crontabが更新され、
crontab: installing new crontab
というメッセージが表示されます
SSHを使用するのが不安な場合は、弊社カスタマーサポートまでご依頼ください。
サーバーのcronジョブに関するKinstaのポリシー
- 弊社サーバーのcronジョブのサポートは、コンテナのcrontabに設定した通りのcronジョブをアップロードするか、編集することに限定されます。crontabで実行されるコマンドの記述が不安なお客様は、経験のある開発者と協力して記述してください。
- cronジョブの最小間隔は5分です。5分間隔よりも頻繁に実行されるサーバーのcronジョブはアップロードをお控えください。カスタマーサポートに追加をご依頼された場合は、5分間隔への変更をご提案させていただきます。5分間隔より頻繁に実行するcronジョブが必要な場合は、専用サーバーが必要になります。専用サーバーでは、1分間隔のcronジョブを実行することができます。
- crontabの上部に記述されたcronジョブは、編集したり、移動したりしないでください。これは、弊社システムエンジニアによって記述されたものであり、ファイルの最上部に位置する必要があります。
- カスタムサーバーのcronジョブは、crontabファイルの一番下に追加してください。ファイルの一番上に追加してしまうと、Kinstaのメンテナンススクリプト、ステージングシステム、またはバックアップシステムが、cronジョブを上書きしてしまう可能性があります。