Skip to main content

Installation

Reactive Resume can be installed by following the Portainer guide for creating a new stack.  Learn about configuring a Docker stacks and then use the following Docker Compose code to run this app:

---
services:
  postgres:
    image: postgres:16-alpine
    restart: unless-stopped
    volumes:
      - /srv/reactive-resume/db:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: 
      POSTGRES_PASSWORD: 
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres -d postgres"]
      interval: 10s
      timeout: 5s
      retries: 5

  # Storage (for image uploads)
  minio:
    image: minio/minio:latest
    restart: unless-stopped
    command: server /data
    ports:
      - "9000:9000"
    volumes:
      - /srv/reactive-resume/minio:/data
    environment:
      MINIO_ROOT_USER: 
      MINIO_ROOT_PASSWORD: 

  app:
    image: amruthpillai/reactive-resume:latest
    restart: unless-stopped
    ports:
      - "3000:3000"
    depends_on:
      - postgres
      - minio
    environment:
      # -- Environment Variables --
      PORT: 3000
      NODE_ENV: production

      # -- URLs --
      PUBLIC_URL: http://[your-server-ip]:3000
      STORAGE_URL: http://[your-server-ip]:9000/default

      # -- Database (Postgres) --
      DATABASE_URL: postgresql://postgres:postgres@postgres:5432/postgres

      # -- Auth --
      ACCESS_TOKEN_SECRET: 
      REFRESH_TOKEN_SECRET: 
      
      # -- Storage (Minio) --
      STORAGE_ENDPOINT: minio
      STORAGE_PORT: 9000
      STORAGE_REGION: us-east-1 # Optional
      STORAGE_BUCKET: default
      STORAGE_ACCESS_KEY: 
      STORAGE_SECRET_KEY: 
      STORAGE_USE_SSL: "false"
      STORAGE_SKIP_BUCKET_CHECK: "false"