Railway/Guides
テンプレートを作成する
Railway で独自テンプレートを作成し、サービス構成や環境変数をカスタマイズして One-Click Deploy を提供する方法を解説します。
著者: AIイノベーションズ 阿部隼也(X / Twitter)テンプレートを作成する
Railway の Template 機能を使うと、プロジェクトの構成をワンクリックで複製・デプロイできる共有リンクを作成できます。自社プロダクトのデモ環境や OSS サンプルを配布するのに最適です。
1. テンプレートを作る 3 ステップ
- 既存プロジェクトを開く
- 右上 Create Template をクリック
- 名前・説明・アイコン・可視性を設定して Create
これだけでテンプレートが生成され、https://railway.app/template/xxxxx
のような共有 URL が発行されます。
2. サービス構成のカスタマイズ
テンプレート作成時に以下を編集できます。
- Exclude GitHub Repository – テンプレートにリポジトリを含めるか
- Services – デプロイ対象サービスを選択
- Variables – デフォルト値やシークレットマスクを設定
- Volumes – 必要なストレージを追加
- Healthcheck – カスタムヘルスチェックパスを設定
3. 変数 (Template Variable Functions)
テンプレートでは 入力パラメータ を定義して、デプロイ時に利用者が値を入力できます。
[[variables]]
name = "DB_PASSWORD"
description = "Postgres パスワード"
default = "${{random 16}}"
required = true
関数一覧:
関数 | 説明 |
---|---|
random <n> | n 文字のランダム文字列 |
slugify <str> | 文字列を slug 化 |
upper <str> / lower | 大文字化 / 小文字化 |
4. ブランチ指定とプライベートリポジトリ
- Specify Branch:
main
以外をデプロイしたい場合、テンプレート設定でbranch = "dev"
など指定 - Private Repo Support: テンプレート利用者は自身の GitHub トークンでリポジトリにアクセスするため、非公開でも OK
5. テンプレートの公開範囲
可視性 | 説明 |
---|---|
Public | 誰でも URL でデプロイ可能。マーケットプレイスに表示 |
Unlisted | URL を知っている人のみアクセス可能 |
Private | チームメンバーのみ |
6. Best Practices (チェックリスト)
- 生成直後に Eject を促す説明を README に入れる
- クリーンなサンプルデータのみを含め、機密情報を除外
README.md
に Deploy on Railway ボタンを配置
<a href="https://railway.app/template/xxxxx?referralCode=github" target="_blank">
<img src="https://railway.app/button.svg" alt="Deploy on Railway" />
</a>
まとめ
テンプレートを活用すると、環境構築のハードルを大幅に下げられます。社内向けスターターキットやコミュニティ向けデモなど、ぜひ活用してみてください!
PR