mcpField
S
servd

servd

github.com/michtioクラウド・DevOps8640 回インストール1 日前に更新
リポジトリ

servd について

servdは、ServdのマネージドホスティングでCraft CMSを扱う開発者向けのリファレンススキルです。プラットフォーム固有のデプロイ、ストレージ、キャッシュ、データベース、キューの設定とトラブル対応を扱います。

主な機能

  1. 01Gitプッシュによるデプロイと環境フロー
  2. 02servd.yamlのビルド設定
  3. 03アセットストレージと画像変換
  4. 04静的キャッシュとBlitzの設定
  5. 05データベース、バックアップ、キューの解説
  6. 06一時ファイルシステムの制約と対処

活用シーン

  1. 01Craft CMSプロジェクトをServdへデプロイ
  2. 02Servdのアセット保存と変換を設定
  3. 03キャッシュやファイル非永続化の問題を調査
  4. 04データベース接続とキュージョブを計画

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/michtio/craftcms-claude-skills --skill servd

インストール後、Claude Code で/servdを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
asset-storage.md
caching.md
database-and-queue.md
deploy-and-environments.md
limitations.md
local-dev.md

詳細

Servd — Craft CMS 向けマネージドホスティング

Craft に特化したマネージドホスティングプラットフォーム、Servd(servd.host)のリファレンスです。Git push によるデプロイと servd.yaml のビルド設定、ローカル → ステージング → 本番環境のワークフロー、servd/craft-asset-storage プラグイン、Servd の静的キャッシュ(および Blitz との併用)、SSH 経由のデータベース、バックアップ、キューランナー、一時的なファイルシステム、Craft Cloud との違いを説明します。

このスキルの対象はServd に限定されます。Forge やベアメタルで Craft を自分で運用する場合や、Pixel & Tonic の Craft Cloud と比べた Servd の違いについて説明します。汎用的な Craft のデプロイについては、craftcms スキルの deployment.md を参照してください。Craft Cloud については、craft-cloud スキルを参照してください。

関連スキル — 必要に応じて読み込む

  • craftcms — Servd に関する話題が、プラグインやモジュールの PHP(一時的なファイルシステムのガード、キュージョブの設計、アセットファイルシステムのコード)に関係する場合。
  • craft-site — Servd に関する話題が、フロントエンドのテンプレート処理(キャッシュ済みページ内の {% dynamicInclude %} アイランド、変換の使用方法、キャッシュ済みフォームの CSRF)に関係する場合。
  • ddev — ローカル開発向け。Servd にはファーストパーティのローカル環境がないため、DDEV が標準のローカルスタックです。
  • craft-php-guidelines — 一時的なファイルシステムのチェックを追加するためにプラグインの PHP を編集する場合。

ドキュメント

このスキルの作成に使用した一次情報(Servd の公式ドキュメント):

主張ごとの URL は各リファレンスファイルに記載されています。2026-05-30 にドキュメントと照合して確認済みです。一部の運用上の詳細(cron、正確なプラン階層)は公開ドキュメントに記載されていないため、該当箇所では 要確認 と明記しています。

セルフホスト版とServdの違い

各行は、セルフホストの習慣が誤解を招くポイントです。

懸念事項セルフホスト版Servd
設定ファイル.env、config/*.php、ウェブサーバーの設定ビルド手順用にリポジトリのルートに置く servd.yaml(任意。ダッシュボードの設定を上書きします);Servd ダッシュボードでプラットフォーム設定と実行時環境変数を管理
デプロイ構成した方法によるGit push-to-deploy(GitHub/GitLab/Bitbucket または任意の SSH ホスト)→ Composer のインストールと任意の Node ビルド
環境自分で定義固定の local → staging → production、一方向;allowAdminChanges は local 以外ではすべてオフ
ファイルシステムローカルディスク一時的かつロードバランスされます — ディスクへの書き込みは保持されません;Redis(Craft のデータキャッシュ)またはリモートのアセットボリュームを使用します
アセットローカル、または独自の S3 設定servd/craft-asset-storage — *.files.svdcdn.com CDN 上の S3 対応 Flysystem。環境ごとに自動で分離されます
画像変換ネイティブ/Imager-X/サーバー上の ImageOptimizeServd Asset Platform によるサーバー外での変換;Imager-X では transformer: 'servd' を使用します
データベースインストールしたものMariaDB または MySQL 8。SSH トンネル経由で接続します
ページキャッシュBlitz などServd の静的キャッシュが組み込み済み;Blitz はリバースプロキシモードでこれと併用します(置き換えではありません)
キューワーカーを自分で実行デフォルトでは AJAX による起動;分離された即時処理にはDedicated Queue Runner(有料プラン)を選択します
Croncrontabユーザー設定可能な機能としてはドキュメントに記載なし — キューを前提に設計してください(プランごとに要確認)
Redis自分でインストール提供されます — Craft のデータキャッシュはステートフルな Redis に自動的にマッピングされます
SSHssh user@server利用可能 — SSH セッション(DB トンネルなどに使用)
環境変数.env環境ごとにダッシュボードで管理(コミットする .env ではありません)
Servd と Craft Cloud の違い(簡単な比較)

どちらも、Git デプロイ、一時的なファイルシステム、S3 アセット、サーバー外での変換、ダッシュボードでの環境変数管理に対応する、Craft のマネージドホスティングです。開発者にとっての主な違いは次のとおりです。

ServdCraft Cloud
リポジトリ設定servd.yaml(ビルド)+ダッシュボードcraft-cloud.yaml
アセットレイヤーservd/craft-asset-storage プラグインcraftcms/cloud バンドルのファイルシステム
データベースMariaDB または MySQL 8MySQL 8/Postgres 15(MariaDB には非対応)
SSHはいいいえ
ファーストパーティ CLIなし(プラグインのコンソールコマンド+ダッシュボード)craftcms/cloud + php craft cloud/up
キャッシュServd の静的キャッシュ;Blitz は併用エッジでの静的キャッシュ;Blitz は不要
変換Servd Asset Platform(svdcdn.com)エッジでの Cloudflare Images
キューDedicated Queue Runner(有料)自動処理

よくある落とし穴(共通)

  • ディスクへの書き込みが永続化されると思い込む。 ファイルシステムは一時的なもので、負荷分散されています。書き込んだデータは消失し、インスタンス間で共有されません。Craft のデータキャッシュ(Redis に自動マッピング)またはリモートアセットボリュームを使用してください。references/limitations.md を参照してください。
  • スキーマや Project Config の変更をローカル以外で行う。 Servd はステージング環境と本番環境で allowAdminChanges: false を設定し、一方向(ローカル → ステージング → 本番)に同期します。ローカルで変更してコミットし、デプロイしてください。references/deploy-and-environments.md を参照してください。
  • Blitz を Servd のキャッシュの代替として扱う。 Servd では、静的キャッシュとリバースプロキシモード(Yii Cache Storage + HTTP Generator + Servd Static Cache Purger)で Blitz を併用します。Blitz 独自のサーバーリライトモードは、Servd の負荷分散によって正常に動作しません。references/caching.md を参照してください。
  • 実行時設定用の .env をコミットする。 実行時の環境変数は、コミットされた .env ではなく、環境ごとに Servd ダッシュボードで設定します。SERVD_PROJECT_SLUG / SERVD_SECURITY_KEY はダッシュボードの Assets ページから取得します。
  • ローカルのアセットボリュームを使用する。 ユーザーアセットには servd/craft-asset-storage ファイルシステムを使用し、Servd Asset Platform に保存してデプロイ後も保持されるようにしてください。references/asset-storage.md を参照してください。
  • CI アクションに composer install / npm run build を設定する。 Servd はビルドステップで両方を実行します。代わりに servd.yaml またはダッシュボードで Node のビルドを設定してください。references/deploy-and-environments.md を参照してください。
  • 任意の cron を使えると思い込む。 Servd はユーザーが設定可能な cron について文書化していません。定期的な処理はキュージョブと Dedicated Queue Runner に移してください。プランごとに確認してください。references/database-and-queue.md を参照してください。
  • データベースの扱い方を誤る。 Servd は MariaDB と MySQL 8 に対応しています。DB には直接のパブリックポートではなく、SSH トンネル経由で接続してください。references/database-and-queue.md を参照してください。

参考ファイル

作業に関連する参考ファイルを読んでください。複数のファイルが該当することもよくあります。

タスクの例:

  • 「Craft サイトを Servd にデプロイする」→ deploy-and-environments.md
  • 「Node のビルドステップ/servd.yaml を設定する」→ deploy-and-environments.md
  • 「環境を設定して環境間で同期する」→ deploy-and-environments.md + local-dev.md
  • 「Servd のアセットストレージをインストールする」→ asset-storage.md
  • 「アップロードしたアセットが消えるのはなぜですか?」→ asset-storage.md + limitations.md
  • 「Servd で画像変換を設定する」→ asset-storage.md
  • 「静的キャッシュを有効にする」→ caching.md
  • 「Servd で Blitz を実行する」→ caching.md(Blitz のリバースプロキシモード)
  • 「キャッシュされたページに動的アイランドを追加する」→ caching.md({% dynamicInclude %})
  • 「Servd のデータベースに接続する」→ database-and-queue.md
  • 「キューを設定する/定期ジョブを実行する」→ database-and-queue.md
  • 「データベースをバックアップ/復元/同期する」→ database-and-queue.md + local-dev.md
  • 「Servd プロジェクトのローカル開発環境を設定する」→ local-dev.md
  • 「本番環境のアセット/データベースをローカルに取得する」→ local-dev.md
  • 「Servd でプラグインのファイル書き込みが失敗するのはなぜですか?」→ limitations.md
  • 「Servd で動作するプラグインはどれですか?」→ limitations.md
  • 「Servd と Craft Cloud のどちらを使うべきですか?」→ limitations.md(Servd と Cloud の比較)+ このファイルの表

タスクに必要な参考ファイルのみを読み込んでください。

参考ファイル対象範囲約行数
references/deploy-and-environments.mdGit のプッシュによるデプロイ、ビルドステップ(Composer + Node、servd.yaml のキー、Node のバージョン)、環境(ローカル → ステージング → 本番、一方向)、Project Config + allowAdminChanges、環境変数とシークレット、デプロイ/クローンのワークフロー~150
references/asset-storage.mdservd/craft-asset-storage プラグイン(Composer パッケージ、ハンドル、インストール)、SERVD_PROJECT_SLUG/SERVD_SECURITY_KEY、*.files.svdcdn.com 上の Servd ファイルシステム、環境ごとのディレクトリ、オフサーバーでの変換、Imager-X(transformer: 'servd')と ImageOptimize の連携~140
references/caching.mdServd の静的キャッシュ(有効化 + TTL、Full と Tag-Based のパージ、除外プレフィックス、{% dynamicInclude %} タグ、CSRF の注入、保存時のキャッシュバスティングの自動実行、clear-caches/servd-static-cache + servd-edge-caches)、Blitz のリバースプロキシモードでの実行~140
references/database-and-queue.mdMariaDB/MySQL 8、SSH トンネルによるアクセス、自動および手動バックアップ(30 日間の保持、削除済みアセットの 90 日間のウィンドウ)、Dedicated Queue Runner、cron に関する注意点、コンソール同期コマンド~130
references/local-dev.mdDDEV ベースのローカル開発(Servd 公式のローカル環境はなし)、ローカル用の SERVD_* 変数、servd-asset-storage/local/pull-assets・push-assets・pull-database・push-database、servd-asset-storage/clone、一方向同期の運用~120
references/limitations.md一時的かつ負荷分散されたファイルシステム(実行時ファイルには Redis + リモートボリュームを使用)、プラグイン/機能の制約、文書化済みと未確認の違い(cron)、Servd と Craft Cloud の詳細な比較、リポジトリの検出シグナル(servd/craft-asset-storage、servd.yaml、SERVD_* 環境変数)~140

コメント