本文へ移動
Pancake Stack
章の一覧Pancake Stack マニュアル
はじめに
  1. 1Pancake へようこそ
  2. 2ウインドウの案内
  3. 3最初のサイト
サイトを作る
  1. 4サイトの操作
  2. 5ファイル、エディタ、デザイン
  3. 6サイトの取り込み
  4. 7データベース
共有と公開
  1. 8サイトを公開する
  2. 9自分のネットワークとローカル HTTPS
  3. 10サイトからのメール
  4. 11デプロイ
スタックの運用
  1. 12バックアップと保存ポイント
  2. 13サービス、タスク、ワーカ
  3. 14アシスタントと MCP
リファレンス
  1. 15設定、テンプレート、プラグイン
  2. 16プランとサブスクリプション
  3. 17困ったときは
  4. 18プライバシーとデータ

Pancake Stack › Pancake Stack マニュアル

焼きたてを保つ · スタックの運用

サービス、タスク、ワーカ

FullStack では PostgreSQL、Valkey、Memcached が加わり、サイトのスケジュールタスクとバックグラウンドワーカを実行できます。

サービスペイン:Valkey、Memcached、PostgreSQL のスイッチと、その下に各サイトのタスクとワーカ。
図 13.1サービスペイン:Valkey、Memcached、PostgreSQL のスイッチと、その下に各サイトのタスクとワーカ。

13.1データベースとキャッシュ

FullStack サービスペインでは、3 つの追加のサーバをオンにできます。いずれもこの Mac の中だけで動き、Pancake と一緒に開始・停止し、各サイトにアドレスを環境変数で渡します。

サービスサイトに渡される変数オプション
Valkey(Redis 互換)REDIS_HOST、REDIS_PORT、REDIS_PASSWORD、VALKEY_URL、REDIS_URL再起動後もデータを保持、URL をコピー
MemcachedMEMCACHED_HOST、MEMCACHED_PORTメモリ(16 MB〜1 GB)
PostgreSQL 17PGHOST、PGPORT、PGDATABASE、PGUSER、PGPASSWORD、POSTGRES_URLサイトごとのデータベースとロール

PHP には redis、memcached、pgsql、pdo_pgsql 拡張機能が含まれています。サービスのオン/オフを切り替えると、サーバが動いていれば再起動します。動作中のサービスには、アドレス(127.0.0.1:6379 など)が表示されます。

PostgreSQL のデータベースはデータベースペインで管理します。

13.2スケジュールタスクとワーカ

FullStack サービスペインの各サイトには、次のものを設定できます:

どちらも、Pancake が開いていてサーバが動いている間、サイトのフォルダでサイトの環境変数(データベース設定を含む)を使って実行されます。サーバ上ではなく、この Mac の cron のようなものです。

  1. サイトカードの追加をクリックします。
  2. 合うものがあればプリセットを選ぶか(サイトのファイルに合うものを Pancake が提示します)、名前、種類(スケジュールタスクまたはワーカ)、コマンドを入力します。
  3. スケジュールタスクではスケジュール(cron)を入力します。入力に合わせて次回の実行日時が表示されます。N 分で実行を打ち切るで、1 回の実行にかけられる時間を制限します(変更しなければ 10 分)。
  4. 保存をクリックします。
プリセット種類コマンドスケジュール
Laravel schedulerタスクartisan schedule:run* * * * *
Laravel queue workerワーカartisan queue:work --sleep=3 --tries=3
WP-Cronタスクphp wp-cron.php*/5 * * * *
Run tests (PHPUnit)タスクphp vendor/bin/phpunit@daily
Django management commandタスクmanage.py clearsessions@daily

各行には最後に実行した日時と成否が表示され、今すぐ実行、ログ、編集があります。出力はタスク専用のログ(ログウインドウの task-<name>.log)に書き込まれます。

コマンドに使えるもの

コマンドは php、artisan、composer、python、manage.py のいずれかで始めます。シェルは使わないため、パイプ、;、&&、リダイレクトは使えず、展開も行われません。引用符は通常どおり使えます。

スケジュール

スケジュールは 5 つの項目からなります:分、時、日、月、曜日。時刻は Mac のタイムゾーンです。

スケジュール実行タイミング
*/5 * * * *5 分ごと
0 * * * * または @hourly毎時 0 分
30 2 * * *毎日 2:30
0 9 * * mon-fri平日の 9:00
0 0 1 * * または @monthly毎月 1 日の 0:00

リスト(1,15)、範囲(1-5)、間隔(*/15)、月と曜日の名前、@daily、@weekly、@yearly も使えます。

13.3Nginx

FullStack サイトのウェブサーバに Nginx を使えます。サイトカードで「詳細」をオンにし、ウェブサーバを Nginx にします。カードの詳細設定を参照してください。