DigitalOceanは初回起動時に自動的に実行されるユーザーデータスクリプトを使用します。スクリプトの先頭にある設定変数を入力してから、Dropletを作成する際にスクリプト全体を貼り付けます。

Linode StackScriptsとは異なり、DigitalOceanにはフォームUIがありません — 貼り付ける前にスクリプトを直接編集する必要があります。

スクリプトのダウンロード: digitalocean-droplet-keycloak-embed.sh


組み込みKeycloak(推奨)

組み込みSSOで最もシンプルなセットアップにはdigitalocean-droplet-keycloak-embed.shを使用します。

ステップ1 — 設定を入力する

スクリプトを開き、先頭のCONFIGURATIONブロックを編集する:

  # --- 必須 ---
PROJECT_ID="rtsurvey"                  # プロジェクトの一意識別子(スペースなし)
ADMIN_PASSWORD="admin"                 # アプリ管理者とKeycloakのパスワード — 初回ログイン後変更すること

# --- ドメイン + SSL ---
DOMAIN="myapp.example.com"            # ドメイン — DNSのAレコードがここを指している必要がある
PROJECT_URL=""                         # Cloudflare/プロキシの後ろでない限り空白のまま
LETSENCRYPT_EMAIL="admin@example.com" # Let's Encrypt通知用メール

# --- オプション ---
STATA_ENABLED="false"
TZ="Asia/Ho_Chi_Minh"
  
フィールド必須説明
PROJECT_IDはいデータベース名とKeycloakクライアントIDとして使用される。小文字、スペースなし。
ADMIN_PASSWORDいいえアプリ管理者ログインとKeycloak管理コンソールのパスワード。デフォルトはadmin初回ログイン後すぐに変更すること
DOMAINはいドメイン名。DNSのAレコードがDroplet IPを指している必要がある。
LETSENCRYPT_EMAILはいLet’s Encrypt証明書通知用メールアドレス。
PROJECT_URLいいえ公開URLを上書きする。DOMAINを使用する場合は空白のまま。Cloudflareの後ろで有用。

セキュリティ: すべてのパスワードはデフォルトでadminです。初回ログイン後すぐに変更してください。

ステップ2 — Dropletを作成する

DigitalOceanコントロールパネルで:

  1. 作成Dropletsをクリックする
  2. イメージとしてUbuntu 22.04 LTSを選択する
  3. Basic、4 GB RAM / 2 vCPU以上を選択する
  4. 詳細オプションにスクロールして初期化スクリプトの追加にチェックを入れる
  5. テキストエリアにスクリプト全体の内容を貼り付ける
  6. Dropletを作成をクリックする

ステップ3 — DNSレコードを追加する

Dropletが起動している間に、DNSプロバイダーにAレコードを追加する:

  Type  : A
Name  : myapp          (またはルートドメインには@)
Value : <droplet-ip>
TTL   : 300
  

ステップ4 — 進捗を監視する

DropletにSSH接続してログを確認する:

  ssh root@<droplet-ip>
tail -f /var/log/rtcloud-setup.log
  

スクリプトは最初の方でサーバーIPを出力します — それが表示されたらすぐにDNSレコードを追加してください。

ステップ5 — アプリにアクセスする

セットアップが完了すると、ログにサマリーが表示されます:

  ============================================================
 rtCloud deployment complete! (Embedded Keycloak)
============================================================
 App URL   : https://myapp.example.com
 Admin     : admin / admin
 Keycloak  : https://myapp.example.com/auth/admin

 !! SECURITY: All passwords default to 'admin'.
    Change them immediately after first login.
============================================================
  

ブラウザでhttps://myapp.example.comを開き、ユーザー名admin、パスワードadminでログインします。

右上メニューの設定から、ログイン後すぐにパスワードを変更してください。


デプロイ後

パスワードを変更する

DropletにSSH接続し、.envを編集して影響を受けるコンテナを再起動する:

  nano /opt/rtcloud/.env
docker compose -f /opt/rtcloud/docker-compose.production.yml up -d --force-recreate rtcloud
  

ドメインを更新する

デプロイ後に異なるドメインを割り当てる場合は、.envPROJECT_URLを更新する:

  nano /opt/rtcloud/.env   # PROJECT_URL= を更新する
docker compose -f /opt/rtcloud/docker-compose.production.yml up -d --force-recreate rtcloud
  

すべてのコンテナを確認する

  docker compose -f /opt/rtcloud/docker-compose.production.yml ps
  
このページは役に立ちましたか?