DigitalOcean използва скриптове User Data, които се изпълняват автоматично при първото зареждане. Попълвате конфигурационните променливи в горната част на скрипта, след което поставяте целия скрипт, когато създавате Droplet.

За разлика от Linode StackScripts, DigitalOcean няма потребителски интерфейс за формуляр — трябва да редактирате скрипта директно преди поставяне.

Download script: digitalocean-droplet-keycloak-embed.sh


Вграден Keycloak (препоръчително)

Use digitalocean-droplet-keycloak-embed.sh for the simplest setup with built-in SSO.

Стъпка 1 — Попълнете конфигурацията

Отворете скрипта и редактирайте блока CONFIGURATION в горната част:

  # --- Required ---
PROJECT_ID="rtsurvey"                  # Unique identifier for your project (no spaces)
ADMIN_PASSWORD="admin"                 # Password for app admin and Keycloak — change after first login

# --- Domain + SSL ---
DOMAIN="myapp.example.com"            # Your domain — DNS A record must point here
PROJECT_URL=""                         # Leave blank unless behind Cloudflare/proxy
LETSENCRYPT_EMAIL="admin@example.com" # Email for Let's Encrypt notifications

# --- Optional ---
STATA_ENABLED="false"
TZ="Asia/Ho_Chi_Minh"
  
ПолеЗадължителноОписание
ID_PROJECT_IDДаИзползва се като име на база данни и клиентски идентификатор на Keycloak. Малки букви, без интервали.
ADMIN_PASSWORDНеПарола за вход на администратор на приложение и конзола за администратор на Keycloak. По подразбиране е adminпромяна след първо влизане.
ДОМЕЙНДаВашето име на домейн. DNS Запис трябва да сочи към Droplet IP.
LETSENCRYPT_EMAILДаИмейл адрес за известия за сертификати Let’s Encrypt.
PROJECT_URLНеЗаменете публичния URL адрес. Оставете празно, за да използвате „ДОМЕЙН“. Полезно зад Cloudflare.

Сигурност: Всички пароли по подразбиране са admin. Променете ги веднага след първото си влизане.

Стъпка 2 — Създаване на капчица

In the DigitalOcean control panel:

  1. Щракнете върху СъздаванеКапчици
  2. Изберете Ubuntu 22.04 LTS като изображение
  3. Изберете Основна, 4 GB RAM / 2 vCPUs или по-голяма
  4. Превъртете до Advanced Options → отметнете Add Initialization scripts
  5. Поставете пълното съдържание на скрипта в текстовата област
  6. Щракнете върху Създаване на капка

Стъпка 3 — Добавяне на DNS запис

Докато Droplet се зарежда, добавете A запис във вашия DNS доставчик:

  Type  : A
Name  : myapp          (or @ for root domain)
Value : <droplet-ip>
TTL   : 300
  

Стъпка 4 — Наблюдавайте напредъка

SSH в Droplet и гледайте дневника:

  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.
============================================================
  

Open https://myapp.example.com in your browser and log in with username admin and password admin.

Променете паролата си веднага след влизане чрез Настройки в горното дясно меню.


След внедряване

Промяна на парола

SSH в Droplet, редактирайте .env и рестартирайте засегнатия контейнер:

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

Актуализирайте домейна

Ако зададете различен домейн след внедряването, актуализирайте PROJECT_URL в .env:

  nano /opt/rtcloud/.env   # update 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
  
Беше ли полезна тази страница?