AIイノベーションズ
Railway/Guides

テンプレートを作成する

Railway で独自テンプレートを作成し、サービス構成や環境変数をカスタマイズして One-Click Deploy を提供する方法を解説します。

著者: AIイノベーションズ 阿部隼也X / Twitter

Railwayはこちら

テンプレートを作成する

Railway の Template 機能を使うと、プロジェクトの構成をワンクリックで複製・デプロイできる共有リンクを作成できます。自社プロダクトのデモ環境や OSS サンプルを配布するのに最適です。


1. テンプレートを作る 3 ステップ

  1. 既存プロジェクトを開く
  2. 右上 Create Template をクリック
  3. 名前・説明・アイコン・可視性を設定して 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 でデプロイ可能。マーケットプレイスに表示
UnlistedURL を知っている人のみアクセス可能
Privateチームメンバーのみ

6. Best Practices (チェックリスト)

  • 生成直後に Eject を促す説明を README に入れる
  • クリーンなサンプルデータのみを含め、機密情報を除外
  • README.mdDeploy 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>

まとめ

テンプレートを活用すると、環境構築のハードルを大幅に下げられます。社内向けスターターキットやコミュニティ向けデモなど、ぜひ活用してみてください!

Railwayはこちら

PR