Quickstart
Andromeda is a suite of apps that are easy to self host, whether you're a complete beginner or a seasoned devops engineer. We'll show you how to deploy a minimal micro blogging app called Posts two different ways:
- Railway (recommended for beginners)
- Docker
Railway
Railway is halfway between a VPS (virtual private server) and a hosting platform like Netlify or Vercel. It's the perfect place to host an Andromeda app if you're a beginner.
Deploy
Configure
Railway will show a Configure button, and when you click on it you will need to fill in two things:
SITE_URL- This will be the site of your deployed app. If you don't know what that URL will be then you can just put a placeholder for now likehttps://example.com.POSTS_PASSWORD- The password you want to set to access the admin dashboard.

Once you have filled these out you can click the Save Config button at the bottom. Then click Deploy!
Use
Your app is now live! If you click on the square with your app you can see the hosted URL for it.

One more thing that is worth adjusting is copying the URL, going into the Variables tab, clicking Edit for the SITE_URL variable, and pasting in your hosted app URL. This will make sure its fully functional.

Granted those Railway URLs are not pretty, so if you happen to get a custom domain, just visit the Settings tab and under the Networking section click + Custom Domain and set it up. Of course make sure to update the SITE_URL variable again if you do this!
Docker
Setup
Create a new folder and add a docker-compose.yml file:
services:
posts:
image: ghcr.io/stevedylandev/posts:latest
platform: linux/amd64
ports:
- "${PORT:-3000}:${PORT:-3000}"
env_file:
- .env
volumes:
- posts-data:/data
restart: unless-stopped
volumes:
posts-data:Configure
Create a .env file in the same folder with the following:
POSTS_PASSWORD=changeme
SITE_URL=http://localhost:3000Make sure to update POSTS_PASSWORD with your own password and SITE_URL with your domain if you have one hooked up to your docker setup.
Deploy
Start the app:
docker compose up -dThis will start Posts on port 3000 with a persistent volume for the SQLite database and uploads. Visit http://localhost:3000 and log in at /login with your configured password.