Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

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

Click on the button below to sign up if you haven't already and start the process of deploying Posts.

Deploy on Railway

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 like https://example.com.
  • POSTS_PASSWORD - The password you want to set to access the admin dashboard.

railway deploying app

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.

railway deployment with hosted url

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.

railway edit existing variable

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:3000

Make 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 -d

This 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.

Keep Reading

What is Andromeda?

More Apps

Build Your Own