Použite aws-ec2.sh ako skript User Data pri spúšťaní inštancie EC2. Skript sa automaticky spustí pri prvom spustení.

Stiahnuť skript: aws-ec2.sh


Krok 1 — Vyplňte konfiguráciu

Otvorte skript a upravte blok CONFIGURATION v hornej časti:

  # --- Povinné ---
PROJECT_ID="rtsurvey"
ADMIN_PASSWORD="admin"                       # Zmeňte po prvom prihlásení

# --- Doména + SSL ---
DOMAIN="myapp.example.com"
LETSENCRYPT_EMAIL="admin@example.com"

# --- Vstavaný Keycloak ---
EMBED_KEYCLOAK="true"
KEYCLOAK_ADMIN_PASSWORD="${ADMIN_PASSWORD}"  # Predvolené na ADMIN_PASSWORD
  
PolePovinnéPopis
PROJECT_IDÁnoPoužíva sa ako názov databázy a ID klienta Keycloak. Malými písmenami, bez medzier.
ADMIN_PASSWORDNieHeslo správcu aplikácie a Keycloak. Predvolené na adminzmeňte po prvom prihlásení.
DOMAINNieVaša doména pre HTTPS. Ponechajte prázdne pre režim iba HTTP.
LETSENCRYPT_EMAILÁno (ak je nastavená DOMAIN)Email pre oznámenia Let’s Encrypt.
EMBED_KEYCLOAKNietrue na nasadenie vstavaného Keycloak (vyžaduje 4 GB RAM).

Bezpečnosť: Všetky heslá majú predvolenú hodnotu admin. Zmeňte ich ihneď po prvom prihlásení.


Krok 2 — Spustite inštanciu EC2

V konzole AWS EC2:

  1. Kliknite na Launch instance
  2. AMI: Ubuntu Server 22.04 LTS (64-bit x86)
  3. Typ inštancie: t3.medium (4 GB RAM) alebo väčší
  4. Kľúčový pár: Vyberte alebo vytvorte pre SSH prístup
  5. Nastavenia siete: Vytvorte alebo vyberte skupinu zabezpečenia (pozrite nižšie)
  6. Rozšírené podrobnostiUser data → vložte celý obsah skriptu
  7. Kliknite na Launch instance

Krok 3 — Nakonfigurujte skupinu zabezpečenia

Otvorte tieto porty v skupine zabezpečenia inštancie:

PortProtokolZdrojÚčel
22TCPVaša IPSSH prístup
80TCP0.0.0.0/0HTTP (presmerovaný na HTTPS pomocou Nginx)
443TCP0.0.0.0/0HTTPS
3838TCP0.0.0.0/0Priamy prístup k Shiny

Neotvárajte port 3306 (MySQL) — nikdy by nemal byť verejne prístupný.


Krok 4 — Pridajte záznam DNS

Kým sa inštancia spúšťa, pridajte záznam A u vášho poskytovateľa DNS:

  Typ   : A
Názov : myapp
Hodnota: <instance-public-ip>
TTL   : 300
  

Krok 5 — Monitorujte postup

  ssh ubuntu@<instance-ip>
tail -f /var/log/rtcloud-setup.log
  

Krok 6 — Prístup k aplikácii

Po dokončení nastavenia protokol zobrazí súhrn s URL vašej aplikácie a prihlasovacími údajmi. Prihláste sa s menom admin a heslom admin, potom ihneď zmeňte heslo.


Po nasadení

Zmeňte heslo

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

Zobrazte všetky kontajnery

  docker compose -f /opt/rtcloud/docker-compose.production.yml ps
  

Priraďte Elastic IP (voliteľné)

Ak inštanciu zastavíte a spustíte, verejná IP sa zmení. Na zachovanie stabilnej IP alokujte Elastic IP a priraďte ju k inštancii v konzole EC2.

Bola táto stránka užitočná?