Ghostfolio

Ghostfolio

Ghostfolio is a digital platform or application designed to assist users in managing their cryptocurrency portfolios. It provides a range of tools and features to track, analyze, and optimize cryptocurrency investments. Users can monitor the performance of their crypto assets, view historical data, set up alerts for price changes, and make informed decisions about buying or selling digital currencies. Ghostfolio aims to simplify the complexities of managing a diverse cryptocurrency portfolio and help users maximize their investment returns while minimizing risks.

version: "3.9"
services:
  ghostfolio-redis:
    image: redis
    container_name: Ghostfolio-REDIS
    hostname: ghostfolio-redis
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: ["CMD-SHELL", "redis-cli ping || exit 1"]
    user: {UID:GUID}
    environment:
      - TZ=Europe/Zurich
    volumes:
      - /home/{user}/docker/ghostfolio/redis:/data
    restart: always

  ghostfolio-db:
    image: postgres
    container_name: Ghostfolio-DB
    hostname: ghostfolio-db
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: ["CMD", "pg_isready", "-q", "-d", "ghostfoliodb", "-U", "ghostfoliouser"]
      timeout: 45s
      interval: 10s
      retries: 10
    user: {UID:GUID}
    volumes:
      - /home/{user}/docker/ghostfolio/db:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=ghostfoliodb
      - POSTGRES_USER=ghostfoliouser
      - POSTGRES_PASSWORD={pass}
    restart: always

  ghostfolio:
    image: ghostfolio/ghostfolio:latest
    container_name: Ghostfolio
    hostname: ghostfolio
    security_opt:
      - no-new-privileges:true
    user: {UID:GUID}
    environment:
      - NODE_ENV=production
      - ACCESS_TOKEN_SALT={32RandomCharacters}
      - JWT_SECRET_KEY={32RandomCharacters}
      - REDIS_HOST=ghostfolio-redis
      - REDIS_PASSWORD=
      - REDIS_PORT=6379
      - DATABASE_URL=postgresql://ghostfoliouser:{pass}@ghostfolio-db:5432/ghostfoliodb?sslmode=prefer
    ports:
      - {port}:3333
    restart: always
    depends_on:
      ghostfolio-db:
        condition: service_started
      ghostfolio-redis:
        condition: service_healthy