deploy について
deployは、`railway up`でローカルディレクトリのコードをRailwayにデプロイするコマンドラインスキルです。デタッチモードとCIモードがあり、サービス、環境、プロジェクト、パスを指定できます。
主な機能
- 01`railway up`によるローカルコードのデプロイ
- 02デタッチ・CIデプロイモード
- 03サービス・環境・プロジェクトの指定
- 04指定パスからのデプロイ
活用シーン
- 01ローカルのコード変更をRailwayに反映
- 02ビルド出力を確認して失敗を調査
- 03指定したサービスや環境へのデプロイ
- 04未リンクのプロジェクトへのディレクトリのデプロイ
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ railwayapp/ railway-skills --skill deployインストール後、Claude Code で/deployを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/environment-config.mdmonorepo.mdrailpack.mdvariables.md詳細
デプロイ
現在のディレクトリのコードを、railway up を使って Railway にデプロイします。
使用する場面
- ユーザーが「デプロイ」「リリース」「コードをプッシュ」と依頼した場合
- ユーザーが「railway up」または「Railway にデプロイ」と言った場合
- ユーザーがローカルのコード変更をデプロイしたい場合
- ユーザーが「デプロイして問題も修正して」と言った場合(--ci モードを使用)
コミットメッセージ
デプロイ内容を要約したわかりやすいコミットメッセージを指定するため、必ず -m フラグを使用してください。
railway up --detach -m "Add user authentication endpoint"
適切なコミットメッセージの例:
- 変更内容を説明する:「ワーカープロセスのメモリリークを修正」
- チケットや課題を参照する:「機能 #123 を実装」
- 簡潔で内容が伝わる:「依存関係を更新し、ビルド警告を修正」
モード
デタッチモード(デフォルト)
デプロイを開始し、すぐに戻ります。ほとんどのデプロイで使用してください。
railway up --detach -m "Deploy description here"
CI モード
完了するまでビルドログをストリーミングします。ユーザーがビルドを確認したい場合や、問題をデバッグする必要がある場合に使用してください。
railway up --ci -m "Deploy description here"
CI モードを使用する場面:
- ユーザーが「デプロイして確認」「デプロイして問題を修正」と言った場合
- ユーザーがビルドの失敗をデバッグしている場合
- ユーザーがビルド出力を確認したい場合
特定のサービスをデプロイする
デフォルトではリンク済みのサービスが対象です。別のサービスにデプロイするには、次のようにします。
railway up --detach --service backend -m "Deploy description here"
未リンクのプロジェクトにデプロイする
事前にリンクせずにプロジェクトへデプロイします。
railway up --project <project-id> --environment production --detach -m "Deploy description here"
--project と --environment の両方のフラグが必要です。
CLI オプション
| フラグ | 説明 |
|---|---|
-m, --message <MSG> | デプロイ内容を説明するコミットメッセージ(必ず使用) |
-d, --detach | ログに接続しません(デフォルト) |
-c, --ci | ビルドログをストリーミングし、完了時に終了します |
-s, --service <NAME> | 対象のサービス(デフォルトではリンク済み) |
-e, --environment <NAME> | 対象の環境(デフォルトではリンク済み) |
-p, --project <ID> | 対象のプロジェクト(--environment が必要) |
[PATH] | デプロイするパス(デフォルトでは現在のディレクトリ) |
ディレクトリのリンク
Railway CLI は、リンク済みのプロジェクトを見つけるため、ディレクトリツリーを上方向にたどります。リンク済みのプロジェクトのサブディレクトリにいる場合は、再リンクする必要はありません。
サブディレクトリをデプロイする場合は、環境スキルを使って rootDirectory を設定してから、通常どおり railway up でデプロイしてください。
デプロイ後
デタッチモード
Deploying to <service>...
deployment スキルを使って、ビルドのステータスを確認してください(--lines フラグを指定)。
CI モード
ビルドログはそのままストリーミングされます。ビルドが失敗した場合、エラーは出力に表示されます。
CI モードの後に railway logs --build を実行しないでください。ログはすでにストリーミングされています。さらに詳しい情報が必要な場合は、deployment スキルを --lines フラグ付きで使用してください(ストリーミングはしないでください)。
組み合わせて使う方法
- デプロイ後にステータスを確認する:
serviceスキルを使用 - ログを表示する:
deploymentスキルを使用 - 設定の問題を修正する:
environmentスキルを使用 - 設定を修正した後に再デプロイする:
environmentスキルを使用
エラー処理
プロジェクトがリンクされていない
No Railway project linked. Run `railway link` first.
サービスがリンクされていない
No service linked. Use --service flag or run `railway service` to select one.
ビルドの失敗(CI モード)
ビルドログはすでにストリーミングされています。railway up --ci の出力から直接内容を確認してください。
CI モードの後に railway logs を実行しないでください(--lines を指定しないと、ログが延々とストリーミングされます)。
よくある問題:
- 依存関係の不足 → package.json/requirements.txt を確認
- ビルドコマンドの誤り → 環境スキルを使って修正
- Dockerfile の問題 → dockerfile のパスを確認