render-web-services について
Render Web Services の設定とトラブルシューティングを扱うスキルです。ネットワーク、ドメイン、ディスク、ヘルスチェック、デプロイのライフサイクルに関する情報をまとめています。
主な機能
- 01ポートバインドと複数ポートの動作
- 02TLS と HTTPS の処理
- 03ヘルスチェックとデプロイのライフサイクル
- 04カスタムドメインと証明書
- 05自動デプロイと PR プレビュー
- 06永続ディスクの制約
活用シーン
- 01サービスがトラフィックを受け取れない問題の調査
- 02カスタムドメインと TLS の設定
- 03ヘルスチェックやロールバックを伴うデプロイの計画
- 04ディスクがスケーリングやデプロイ時の稼働に与える影響の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ render-oss/ skills --skill render-web-servicesインストール後、Claude Code で/render-web-servicesを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/custom-domains.mddeployments.mdhealth-check-patterns.mdpersistent-disks.mdprivate-networking.md詳細
Render Web サービス
このスキルでは、Render の Web サービスの動作について説明します。トラフィックがプロセスに到達する仕組み、デプロイが反映される仕組み、ドメイン、ディスク、自動デプロイなどのオプション機能がどのように連携するかを扱います。render.yaml やダッシュボードの設定を行う際は、Blueprint とネットワークのスキルと併せて使用してください。
使用するタイミング
- ポートのバインド、PORT、またはマルチポートの Web サービスを設定またはデバッグする場合
- エッジとコンテナ内部における TLS/HTTPS の動作を確認する場合
- デプロイをブロックまたはロールバックするヘルスチェックを確認する場合
- カスタムドメイン、DNS、証明書の発行を設定する場合
- 自動デプロイ、CI でゲートされたデプロイ、PR プレビューの生成を設定する場合
- 永続ディスクと、スケーリングやゼロダウンタイムへの影響を確認する場合
- デプロイのライフサイクル(ビルド、デプロイ前、切り替え、ドレイン、ロールバック、シャットダウンの遅延)を確認する場合
より詳細なパターンは references/ にあります(ヘルスチェック、ドメイン、デプロイフェーズ)。
デプロイとヘルスチェックを設定またはトラブルシューティングする前に、references/deployments.md を読んでください。
永続ディスクを接続または変更する前に、references/persistent-disks.md を読んでください。
プライベート接続または追加ポートを設定またはトラブルシューティングする前に、references/private-networking.md を読んでください。
ポートのバインド
0.0.0.0(すべてのインターフェース)でリッスンしてください。localhostまたは127.0.0.1のみにバインドすると、Render のプロキシがアプリにアクセスできません。- HTTP のリッスンポートには
PORT環境変数を使用してください。Render が設定します。デフォルトは10000のことが多く、ダッシュボードのサービス Settings で設定値を変更できます。 - 予約済みポート(通常のトラフィック用にアプリケーションをバインドしないでください):
18012、18013、19099。
マルチポートの Web サービス
- パブリック HTTP トラフィックを受信するポートは1 つだけです。
PORTに設定されたポートが該当します。 - 追加の開放ポートにアクセスできるのは Render のプライベートネットワーク経由のみです(同じパブリック URL の形式でパブリックインターネットからアクセスすることはできません)。
TLS と HTTPS
- TLS は Render のエッジで終端します。 エッジはクライアントと HTTPS で通信し、通常、プロセスは
PORTで平文の HTTP を受け取ります。 - クライアント向けの HTTPS リダイレクトはプラットフォームが処理します。HTTP にアクセスしたユーザーは、エッジで適切にリダイレクトされます。
- まれに明確な必要性がある場合を除き、主要なパブリックリスナーについて、アプリ内で TLS を終端しないでください。標準の Web サービスでは、プロキシの背後で HTTP を使用することを前提としています。
ヘルスチェック
現在のプラットフォームの動作については、references/deployments.md に従ってください。エンドポイントの実装と一般的な失敗パターンについては、references/health-check-patterns.md を参照してください。
カスタムドメイン
- DNS を CNAME で
[service-name].onrender.comに向けます(サービスのホスト名はダッシュボードで確認してください)。 - Render は、検証済みドメインの TLS 証明書を自動的に発行し、更新します。
- エイペックス(ルート)ドメインでは、
@に通常の CNAME を設定できない場合、プロバイダー固有の CNAME に類似したレコードまたはフラット化されたレコードが必要です。 - 設定して検証すれば、ワイルドカードドメイン(例:
*.example.com)を使用できます。 - サービスごとに複数のカスタムドメインを設定できます。Blueprint では
domainsフィールドに一覧を指定できます。
ダッシュボードでの手順、検証、トラブルシューティングについては、references/custom-domains.md を参照してください。
自動デプロイと PR プレビュー
- 自動デプロイの動作と手動トリガーについては、
references/deployments.mdに従ってください。 - PR プレビューは Blueprint の
previews.generation(および関連するプレビュー設定)で構成します。生成の動作は、リポジトリとの連携方法やプランによって異なります。
永続ディスク
- ディスクを使用する Web サービスは単一インスタンスのままで、水平スケーリングできません。
- ディスクを接続すると、ダウンタイムなしのデプロイが無効になります。
- ディスクを利用できるのは実行中のサービスのみで、ビルド中やデプロイ前コマンドの実行中には利用できません。
- ワークロードで水平スケーリングや中断のないデプロイが必要な場合は、サービスに接続したディスクではなく、共有の外部ストレージを使用してください。
- 現在のサポート状況、構成、マウントパス、ランタイムアクセス、サイズ設定、スナップショットの動作については、
references/persistent-disks.mdを参照してください。
デプロイのライフサイクル
有料の Web サービスでは、新しいバージョンへのトラフィック切り替え前に成功している必要があるデータベースのマイグレーションやその他のリリースタスクに、preDeployCommand を使用してください。このコマンドはビルド後、別のコンピューティング環境で実行されます。失敗した場合、デプロイはキャンセルされ、以前の稼働中バージョンが引き続きリクエストを処理します。ビルド、準備完了の確認、トラフィックの切り替え、ドレイン、ロールバック、再起動、デプロイフックの動作の詳細については、references/deployments.md を参照してください。
無料プランに関する注意
無料の Web サービスには個別の制限があります。サービスは非アクティブ状態が続くとスピンダウンし、次のリクエスト時にコールドスタートします。また、単一インスタンスを超えるスケーリングや永続ディスクには対応していません。稼働時間やスケーリングについて案内する際は、無料プランの動作を有料 Web サービスのデフォルト設定と区別してください。
参考資料
| トピック | ファイル |
|---|---|
| ヘルスチェックの設計、タイムアウト、注意点 | references/health-check-patterns.md |
| ドメイン、DNS、TLS 検証 | references/custom-domains.md |
| デプロイのライフサイクル、ヘルスチェック、ロールバック、トリガー | references/deployments.md |
| 永続ディスクの制約と構成 | references/persistent-disks.md |
| プライベートネットワークのアドレス指定、ポート、サービス検出、トラブルシューティング | references/private-networking.md |
関連スキル
- render-deploy — Blueprints、初回デプロイ、
render.yamlの構成 - render-docker — Docker ベースの Web サービスとイメージ/ランタイムの詳細
- render-networking — プライベートネットワーク、内部 URL、複数ポートのプライベートリスナー
- render-scaling — インスタンス数、プラン、スケーリングの制約(ディスクとの相互作用を含む)
最新ドキュメントの取得
このスキルで最新の Render ドキュメントを参照するよう指示された場合は、必ず次の手順に従ってください。
- 利用可能な URL 取得ツールまたは
curlなどの HTTP クライアントを使って、リンク先の Markdown ドキュメントを直接取得してください。Web 検索の要約でドキュメントの代わりにしないでください。 - 取得に成功し、想定したドキュメントが返されたことを確認してから、内容を読んでください。ファイルを保存したり、そのパスを表示したりするだけでは不十分です。
- リクエストに失敗した場合、またはツールで Markdown のレスポンスを読み取れない場合は、リンク先の HTML 版を開いて読んでください。
- どちらの形式も取得できない場合は、最新の参考資料を利用できないことを明記し、スキルに記載された該当トピック固有の代替手順に従ってください。安定した制約の説明に限って同梱のガイダンスを使用し、変更される可能性のあるプラットフォームの詳細を推測しないでください。
複数の参考資料が必要なタスクでは、それぞれにこの手順を適用し、確認できたドキュメントと利用できなかったドキュメントを区別してください。