GAI生成AIアプリドキュメント

データベースデプロイガイド

Dokploy UIを使ってデータベースサービスを作成・デプロイ・管理する方法

Dokploy の UI を使ってデータベースサービスを作成・デプロイ・管理する手順を説明します。

対応データベース

データベース説明デフォルトポート
PostgreSQL堅牢で SQL 標準に準拠した高信頼性のリレーショナルデータベース5432
MySQLパフォーマンスと柔軟性に優れた、広く普及しているリレーショナルデータベース3306
MariaDBMySQL から派生し、追加機能とパフォーマンス改善が施されたリレーショナルデータベース3306
MongoDB高いスケーラビリティと柔軟性を持つ NoSQL データベース。JSON ライクなドキュメント形式でデータを格納する27017
Redisインメモリ型のキーバリューストア。データベースとしてだけでなく、キャッシュやメッセージブローカーとしても利用される6379

迷ったら PostgreSQL がおすすめです。 幅広い用途に対応でき、信頼性・機能面ともにバランスが良い定番のデータベースです。キャッシュやセッション管理など一時的なデータの高速な読み書きが目的であれば Redis を選択してください。

1. データベースの作成

1.1 プロジェクトを開く

  1. サイドバーから Projects をクリック
  2. 対象のプロジェクトを選択
  3. デプロイ先の Environment(環境) を開く

1.2 データベース作成ダイアログを開く

  1. Environment ページ右上の + Create Service ボタンをクリック
  2. ドロップダウンから Database を選択
  3. データベース作成ダイアログが表示される

Create Serviceメニュー

1.3 データベースタイプを選択

ダイアログ上部のアイコン付きカードから、使用するデータベースを選択します:

データベース作成ダイアログ

1.4 フォームを入力

全データベース共通のフィールド

フィールド必須説明
Name表示名。入力すると App Name が自動生成される
App NameDocker Swarm サービス名。{プロジェクトslug}-{名前slug} の形式で自動生成されるが手動編集も可能。小文字英数字と - のみ使用可
Description-任意の説明文
Database Passwordパスワードジェネレーター付き。$ ! ' " \ / およびスペースは使用不可
Docker Image-空欄の場合はデフォルトイメージが使用される

Database NameDatabase UserDatabase Password は、アプリケーションからデータベースに接続する際に必要な情報です。作成後に Internal Connection URL として確認できるので、特にこだわりがなければデフォルト値のままで問題ありません。

データベースタイプ別の追加フィールド

フィールドPostgreSQLMySQLMariaDBMongoDBRedis
Database Name✅ (default: postgres)✅ (default: mysql)✅ (default: mariadb)--
Database User✅ (default: postgres)✅ (default: mysql)✅ (default: mariadb)✅ (default: mongo)-
Database Root Password-任意任意--
Use Replica Sets---トグルスイッチ-

MongoDB の Replica Sets を有効にすると、レプリカセット rs0 が自動初期化され、root ユーザーが作成されます。

1.5 作成を実行

Create ボタンをクリックするとデータベースが作成されます。

この時点ではまだデータベースは起動していません。次のステップでデプロイ(起動)を行います。

2. データベースのデプロイ

2.1 データベース詳細ページを開く

Environment ページのサービス一覧から、作成したデータベースをクリックして詳細ページを開きます。

2.2 デプロイを実行

  1. General タブの Deploy Settings カードを確認
  2. Deploy ボタン (🚀) をクリック
  3. 確認ダイアログで Confirm をクリック
  4. デプロイログが表示され、「Deployment completed successfully!」と出たら成功です

2.3 デプロイ後のアクション

デプロイ後のアクションボタン

ボタン説明
Deployデータベースを再デプロイする
Reloadデータベースを再起動する
Stopデータベースを停止する
Open Terminalコンテナ内のシェルに接続する

3. 接続情報の確認

General タブにはデプロイ後に2種類の接続情報が表示されます。

3.1 Internal Credentials(内部接続)

Dokploy 上の他のサービスから接続する場合に使用します。

項目説明例 (PostgreSQL)
Userデータベースユーザー名postgres
Database Nameデータベース名postgres
Passwordパスワード(マスク表示)***
Internal Portコンテナ内ポート5432
Internal HostDocker Swarm ネットワーク上のホスト名myproject-mydb
Internal Connection URL完全な接続文字列postgresql://postgres:****@myproject-mydb:5432/postgres

Internal Host は App Name と同じ値です。同じ Docker Swarm ネットワーク上のサービスからはこのホスト名で直接アクセスできます。

3.2 アプリケーションからの接続方法

作成したデータベースにアプリケーションから接続するには、Internal Connection URL を環境変数として設定します。

  1. Internal Credentials の Internal Connection URL をコピーする
  2. 接続元のアプリケーションの Environment タブを開く
  3. 環境変数として設定する(例: DATABASE_URL=postgresql://postgres:****@myproject-mydb:5432/postgres
  4. アプリケーションを Deploy(再デプロイ)する

環境変数名はアプリケーション側の実装に合わせてください。一般的には DATABASE_URL がよく使われます。

3.3 External Credentials(外部接続)

External Credentials設定カード

この Dokploy 環境では External Credentials(外部接続)は使用しないでください。 セキュリティ上の理由から、データベースへの接続は Internal Credentials(内部接続)のみを使用してください。

4. タブ別機能詳細

データベース詳細ページには以下のタブがあります:

General タブ

  • Deploy Settings(デプロイ操作)
  • Internal Credentials(内部接続情報)
  • External Credentials(外部接続設定)

Environment タブ

  • 環境変数の追加・編集(KEY=VALUE 形式)

Logs タブ

  • Docker コンテナのリアルタイムログを表示

Monitoring タブ

  • CPU・メモリなどのシステムメトリクスを表示

Backups タブ

  • データベースのバックアップ・復元を管理できます(詳細は別途ガイドを作成予定)

Redis はバックアップ機能をサポートしていません。

Advanced タブ

  • Custom Command: Docker イメージ・起動コマンド・引数の変更
  • Cluster Settings: レプリカ数、配置制約、更新戦略などの Swarm 設定
  • Volumes: ボリュームマウント・バインドマウントの管理
  • Resources: CPU・メモリの制限/予約設定
  • Rebuild(危険ゾーン): データベースを完全リセット(全データ削除)

5. よくある操作

データベースの停止・再起動

  1. データベース詳細ページの General タブを開く
  2. Stop ボタンでコンテナを停止
  3. Start ボタンで再起動

Docker イメージのバージョン変更

  1. Advanced タブを開く
  2. Custom Command セクションで Docker Image を変更(例: postgres:18postgres:17
  3. Save をクリック
  4. General タブに戻り Deploy を実行

データベースの完全リセット

  1. Advanced タブを開く
  2. ページ下部の Rebuild ボタンをクリック
  3. 確認ダイアログで Confirm をクリック

Rebuild は全データ・テーブル・設定を削除し、データベースを初期状態に戻します。この操作は元に戻せません。

データベースの削除

  1. データベース詳細ページのヘッダー右上のゴミ箱アイコンをクリック
  2. 確認ダイアログで Confirm をクリック

削除するとデータベースのデータもすべて失われます。この操作は元に戻せません。

7. パスワードの制約

データベースパスワードには以下の文字が使用できます:

  • 英数字: a-z, A-Z, 0-9
  • 許可される記号: @ # % ^ & * ( ) _ + - = [ ] { } | ; : , . < > ? ~ `

以下の文字は使用できません(データベース互換性のため):

  • $ ! ' " \ / およびスペース

8. トラブルシューティング

デプロイに失敗する

  1. Deploy ボタンクリック後に表示されるデプロイログを確認する
  2. Logs タブでコンテナログを確認する
  3. Docker イメージ名が正しいか確認する
  4. 指定したポートが他のサービスと衝突していないか確認する

On this page