はじめに
Renderでアプリケーションをデプロイする際、Name(必須)と Database(任意)という項目を設定する必要があります。
この記事では、それぞれの役割と違いを解説します。
Renderとは
Renderは、Web アプリケーションやデータベースを簡単にデプロイできるクラウドプラットフォームです。
主な特徴:
- GitHubリポジトリと連携し、自動デプロイが可能
- 無料プランから利用可能
- PostgreSQL、Redisなどのデータベースを簡単にプロビジョニング
-
render.yamlでInfrastructure as Codeを実現
Name とは
Name は、Render のダッシュボード上で表示される、サービス自体を識別するための名前です。
特徴
- 変更可能: いつでもダッシュボードから変更できる
- 表示用: 主にUI上での識別に使用される
-
URLに影響: Web Serviceの場合、デフォルトのURLは
{サービス名}.onrender.comとなる
設定例
# render.yaml
services:
- type: web
name: my-rails-app # ← これがサービス名
env: ruby
region: singapore
Database(データベース名)とは
Database は、PostgreSQL 内部で実際に使用されるデータベース名(dbname)です。
特徴
- 作成後は変更不可: データベース名を作成後に変更できない
- 接続情報に使用: PostgreSQLへの接続時に実際に使用される
- 小文字に変換される: 設定した名前が自動的に小文字に変換されることが多い
データベース接続URLの構造
postgresql://USER:PASSWORD@HOST:PORT/DATABASE
↑
ここがdatabaseName
実際の例:
postgresql://myapp_user:password@dpg-xxx.oregon-postgres.render.com:5432/myapp_production
設定例
# render.yaml
databases:
- name: my-rails-app-db # ← Renderダッシュボード上の識別名(サービス名)
databaseName: myapp_production # ← PostgreSQL内部で使用される実際のDB名
user: myapp_user
region: singapore
まとめ
- Name:
- Render システム内で、そのデータベースインスタンス全体を識別するためのユニークな名前
- 接続先として指定するアドレスの一部になる
- Database:
- データベースインスタンス内に実際に作成されるデータ格納領域の具体的な名前
- アプリケーションがデータを入れる場所として指定
