- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 442
Create SteVe Instance in AWS Lightsail
- 
Log into AWS Dashboard AWS Services -> Lightsail 
- 
Create Instance, Platform Linux/Unix, OS Only Ubuntu 18.04 LTS, -> Status 2024: UBUNTU 24.x Upload public key, select smallest plan -> Status 2024: Memory Minimum 1GB 
- Create Static IP address, Attach to Instance
- Click on Instance -> Networking, Under Firewall Select + Add Another TCP 8080
- Create Database, Pick MySQL 5.7.26, You can leave Username and Password to default, Plan Standard / smallest
- Wait for the database to start and copy database credentials (endpoint, username and password)
- Connect to instance via ssh using the public IP.
- 
Update everything: sudo apt update && sudo apt -y upgrade(don't override the configs)
- 
Install required packages: 
a.
sudo apt install maven
b.
sudo apt install mysql-client
c.
sudo apt-get install openjdk-17-jdk
- Prepare Database (use the username, host and password from earlier):
mysql -u dbmasteruser -h ls-e98192e66a6XXXXXXXXXXXXXXXXXX.c0ftlmkcbxge.eu-central-1.rds.amazonaws.com -p
mysql> CREATE DATABASE stevedb CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> quit
- 
Checkout SteVe: git clone https://github.com/RWTH-i5-IDSG/steve.git; cd steve
- 
Configure SteVe: vi src/main/resources/config/prod/main.properties
- configure db.ip,db.useranddb.passwordto match your MySQL information, e.g.ls-e98192e66a6XXXXXXXXXXXXXXXXXX.c0ftlmkcbxge.eu-central-1.rds.amazonaws.com(MySQL endpoint) asdb.ip,dbmasteruserasdb.useranddb.passwordas shown.
- Bind SteVe to all interfaces by setting: server.host = 0.0.0.0
- Use a strong password for auth.password
- 
Build Steve (we need to enforce lower memory usage on the tiny instance): export MAVEN_OPTS="-Xmx200m" && mvn package
- 
Start it. I suggest running it inside screen or tmux: java -jar target/steve.jarYou'll be able to access SteVe via the Lightsail public IP.