AWS EC2
aws-ec2.sh user data స్క్రిప్ట్ ఉపయోగించి AWS EC2 ఇన్స్టాన్స్లో rtCloud డిప్లాయ్ చేయండి.
EC2 ఇన్స్టాన్స్ లాంచ్ చేసేటప్పుడు aws-ec2.sh ని User Data స్క్రిప్ట్గా ఉపయోగించండి. స్క్రిప్ట్ మొదటి బూట్లో స్వయంచాలకంగా నడుస్తుంది.
స్క్రిప్ట్ డౌన్లోడ్ చేయండి: aws-ec2.sh
దశ 1 — కాన్ఫిగరేషన్ నింపండి
స్క్రిప్ట్ తెరవండి మరియు పైభాగంలో CONFIGURATION బ్లాక్ సవరించండి:
# --- అవసరమైనవి ---
PROJECT_ID="rtsurvey"
ADMIN_PASSWORD="admin" # మొదటి లాగిన్ తర్వాత మార్చండి
# --- డొమైన్ + SSL ---
DOMAIN="myapp.example.com"
LETSENCRYPT_EMAIL="admin@example.com"
# --- ఎంబెడెడ్ Keycloak ---
EMBED_KEYCLOAK="true"
KEYCLOAK_ADMIN_PASSWORD="${ADMIN_PASSWORD}" # ADMIN_PASSWORD కి డిఫాల్ట్
| ఫీల్డ్ | అవసరమైనదా | వివరణ |
|---|---|---|
PROJECT_ID | అవును | డేటాబేస్ పేరు మరియు Keycloak క్లైంట్ ID గా ఉపయోగించబడుతుంది. చిన్న అక్షరాలు, ఖాళీలు లేవు. |
ADMIN_PASSWORD | లేదు | యాప్ అడ్మిన్ పాస్వర్డ్ మరియు Keycloak అడ్మిన్ పాస్వర్డ్. admin కి డిఫాల్ట్ — మొదటి లాగిన్ తర్వాత మార్చండి. |
DOMAIN | లేదు | HTTPS కోసం మీ డొమైన్. HTTP-only మోడ్ కోసం ఖాళీగా వదిలండి. |
LETSENCRYPT_EMAIL | అవును (DOMAIN సెట్ చేస్తే) | Let’s Encrypt నోటిఫికేషన్ల కోసం ఇమెయిల్. |
EMBED_KEYCLOAK | లేదు | ఎంబెడెడ్ Keycloak డిప్లాయ్ చేయడానికి true (4 GB RAM అవసరం). |
భద్రత: అన్ని పాస్వర్డ్లు
adminకి డిఫాల్ట్. మీ మొదటి లాగిన్ తర్వాత వాటిని వెంటనే మార్చండి.
దశ 2 — EC2 ఇన్స్టాన్స్ లాంచ్ చేయండి
AWS EC2 కన్సోల్ లో:
- Launch instance క్లిక్ చేయండి
- AMI: Ubuntu Server 22.04 LTS (64-bit x86)
- Instance type:
t3.medium(4 GB RAM) లేదా పెద్దది - Key pair: SSH యాక్సెస్ కోసం ఒకటి ఎంచుకోండి లేదా సృష్టించండి
- Network settings: Security Group సృష్టించండి లేదా ఎంచుకోండి (కింద చూడండి)
- Advanced details → User data → పూర్తి స్క్రిప్ట్ కంటెంట్ పేస్ట్ చేయండి
- Launch instance క్లిక్ చేయండి
దశ 3 — Security Group కాన్ఫిగర్ చేయండి
ఇన్స్టాన్స్ Security Group లో ఈ పోర్ట్లు తెరవండి:
| పోర్ట్ | ప్రోటోకాల్ | మూలం | ఉద్దేశం |
|---|---|---|---|
| 22 | TCP | మీ IP | SSH యాక్సెస్ |
| 80 | TCP | 0.0.0.0/0 | HTTP (Nginx ద్వారా HTTPS కి మళ్ళించబడుతుంది) |
| 443 | TCP | 0.0.0.0/0 | HTTPS |
| 3838 | TCP | 0.0.0.0/0 | Shiny నేరు యాక్సెస్ |
పోర్ట్ 3306 (MySQL) తెరవకండి — ఇది ఎప్పుడూ పబ్లిక్గా యాక్సెస్ చేయబడకూడదు.
దశ 4 — DNS రికార్డ్ జోడించండి
ఇన్స్టాన్స్ బూట్ అవుతున్నప్పుడు, మీ DNS ప్రొవైడర్లో A రికార్డ్ జోడించండి:
Type : A
Name : myapp
Value : <instance-public-ip>
TTL : 300
దశ 5 — పురోగతి పర్యవేక్షించండి
ssh ubuntu@<instance-ip>
tail -f /var/log/rtcloud-setup.log
దశ 6 — యాప్ యాక్సెస్ చేయండి
సెటప్ పూర్తయినప్పుడు, లాగ్ మీ యాప్ URL మరియు ఆధారపత్రాలతో సారాంశం చూపిస్తుంది. వినియోగదారు పేరు admin మరియు పాస్వర్డ్ admin తో లాగిన్ అవండి, తర్వాత వెంటనే మీ పాస్వర్డ్ మార్చండి.
డిప్లాయ్మెంట్ తర్వాత
పాస్వర్డ్ మార్చండి
nano /opt/rtcloud/.env
docker compose -f /opt/rtcloud/docker-compose.production.yml up -d --force-recreate rtcloud
అన్ని కంటైనర్లు చూడండి
docker compose -f /opt/rtcloud/docker-compose.production.yml ps
Elastic IP కేటాయించండి (ఐచ్ఛికం)
ఇన్స్టాన్స్ ఆపి ప్రారంభిస్తే పబ్లిక్ IP మారుతుంది. స్థిరమైన IP ఉంచుకోవడానికి, Elastic IP కేటాయించి EC2 కన్సోల్లో ఇన్స్టాన్స్తో అనుబంధించండి.