Skip to content

Install Andromeda

Andromeda is the main web application for users which use resources in your HPC center. It is a static single-page application served by nginx, and it talks to PERSEUS only through the Gateway.

This guide explains how to run Andromeda with Docker.

  • Docker Engine.
  • A reachable public Gateway URL (the …/gateway base), e.g. https://perseus.example.org/gateway. Set this up first by following the Gateway installation guide.
Terminal window
docker pull docker.io/pc2upb/andromeda:latest

Andromeda needs a single runtime variable:

Environment variableDescription
GATEWAY_URL

Public base URL of the Gateway, including the /gateway prefix — for example https://perseus.example.org/gateway.

Terminal window
docker run -d \
--name andromeda \
-e GATEWAY_URL=https://perseus.example.org/gateway \
-p 8002:80 \
--restart unless-stopped \
docker.io/pc2upb/andromeda:latest

nginx inside the container serves the app on port 80 (mapped to 8002 on the host above) and already falls back to index.html for client-side routing.

Terminal window
docker pull docker.io/pc2upb/andromeda:latest
docker rm -f andromeda
# re-run the docker run command above

Serve Andromeda at your site root (BASEURL/).

server {
listen 80;
server_name perseus.example.org;
location / {
proxy_pass http://127.0.0.1:8002/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Open the public URL in a browser. The login button should redirect you into the Gateway/Keycloak login flow — if it does, GATEWAY_URL is configured correctly.