DigitalOcean wykorzystuje skrypty Dane użytkownika, które uruchamiają się automatycznie przy pierwszym uruchomieniu. Wypełniasz zmienne konfiguracyjne u góry skryptu, a następnie wklejasz cały skrypt podczas tworzenia Dropletu.

W przeciwieństwie do Linode StackScripts, DigitalOcean nie ma interfejsu użytkownika — musisz edytować skrypt bezpośrednio przed wklejeniem.

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


Wbudowany Keycloak (zalecane)

Użyj digitalocean-droplet-keycloak-embed.sh, aby uzyskać najprostszą konfigurację z wbudowanym logowaniem jednokrotnym.

Krok 1 — Wypełnij konfigurację

Otwórz skrypt i edytuj blok „KONFIGURACJA” u góry:

  # --- 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"
  
PoleWymaganeOpis
ID_PROJEKTUTakUżywana jako nazwa bazy danych i identyfikator klienta Keycloak. Małe litery, bez spacji.
HASŁO_ADMINANieHasło do logowania administratora aplikacji i konsoli administracyjnej Keycloak. Domyślnie jest to adminzmiana po pierwszym zalogowaniu.
DOMENATakTwoja nazwa domeny. Rekord DNS musi wskazywać adres IP Dropletu.
LETSENCRYPT_EMAILTakAdres e-mail dla powiadomień o certyfikatach Let’s Encrypt.
URL_PROJEKTUNieZastąp publiczny adres URL. Pozostaw puste, aby użyć DOMAIN. Przydatne za Cloudflare.

Bezpieczeństwo: Wszystkie hasła domyślnie ustawione są na „admin”. Change them immediately after your first login.

Krok 2 — Utwórz kroplę

In the DigitalOcean control panel:

  1. Kliknij UtwórzKropelki
  2. Jako obraz wybierz Ubuntu 22.04 LTS
  3. Wybierz Podstawowy, 4 GB RAM / 2 vCPU lub większy
  4. Przewiń do Opcje zaawansowane → zaznacz Dodaj skrypty inicjujące
  5. Wklej pełną treść skryptu w obszarze tekstowym
  6. Kliknij Utwórz kroplę

Krok 3 — Dodaj rekord DNS

Podczas uruchamiania Dropletu dodaj rekord A u swojego dostawcy DNS:

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

Krok 4 — Monitoruj postęp

SSH do Dropletu i obejrzyj dziennik:

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

The script prints your server IP near the start — add the DNS record as soon as you see it.

Krok 5 — Uzyskaj dostęp do aplikacji

Po zakończeniu konfiguracji dziennik zawiera podsumowanie:

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

Zmień hasło natychmiast po zalogowaniu w Ustawieniach w prawym górnym menu.


Po wdrożeniu

Zmień hasło

SSH do Dropletu, edytuj .env i zrestartuj kontener, którego dotyczy problem:

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

Zaktualizuj domenę

If you assign a different domain after deployment, update PROJECT_URL in .env:

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

Wyświetl wszystkie kontenery

  docker compose -f /opt/rtcloud/docker-compose.production.yml ps
  
Czy ta strona była pomocna?