one-click-apps/public/v4/apps/ghostfolio.yml

103 lines
4.4 KiB
YAML

captainVersion: 4
services:
$$cap_appname:
caproverExtra:
containerHttpPort: '3333'
image: ghostfolio/ghostfolio:$$cap_GHOSTFOLIO_VERSION
hostname: $$cap_appname.$$cap_root_domain
environment:
NODE_ENV: $$cap_NODE_ENV
ACCESS_TOKEN_SALT: $$cap_ACCESS_TOKEN_SALT
BASE_CURRENCY: $$cap_BASE_CURRENCY
DATABASE_URL: postgresql://$$cap_POSTGRES_USER:$$cap_POSTGRES_PASSWORD@srv-captain--$$cap_appname-db:5432/$$cap_POSTGRES_DB?sslmode=prefer
HOST: $$cap_appname.$$cap_root_domain
JWT_SECRET_KEY: $$cap_JWT_SECRET_KEY
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
REDIS_HOST: srv-captain--$$cap_appname-cache
REDIS_PORT: 6379
$$cap_appname-db:
caproverExtra:
notExposeAsWebApp: 'true'
image: postgres:$$cap_POSTGRES_VERSION
environment:
POSTGRES_DB: $$cap_POSTGRES_DB
POSTGRES_USER: $$cap_POSTGRES_USER
POSTGRES_PASSWORD: $$cap_POSTGRES_PASSWORD
POSTGRES_ROOT_PASSWORD: $$cap_POSTGRES_ROOT_PASSWORD
volumes:
- $$cap_appname-db:/var/lib/postgresql/data
$$cap_appname-cache:
caproverExtra:
notExposeAsWebApp: 'true'
image: redis:$$cap_REDIS_VERSION
caproverOneClickApp:
instructions:
start: |-
Ghostfolio is an open source wealth management software built with web technology.
The application empowers busy people to keep track of stocks, ETFs or cryptocurrencies and make solid, data-driven investment decisions.
end: |-
Ghostfolio has been successfully deployed! It might take few moments before it's fully started.
You can access it at `http://$$cap_appname.$$cap_root_domain`
displayName: Ghostfolio
isOfficial: true
description: Open Source Wealth Management Software
documentation: See https://ghostfol.io
variables:
- id: $$cap_GHOSTFOLIO_VERSION
label: Ghostfolio Version
description: Check out their valid tags at https://hub.docker.com/r/ghostfolio/ghostfolio/tags
defaultValue: '1.205.1'
validRegex: /.{1,}/
- id: $$cap_POSTGRES_VERSION
label: Postgres Version
description: Check out their valid tags at https://hub.docker.com/_/postgres/tags
defaultValue: '15.0-alpine'
validRegex: /.{1,}/
- id: $$cap_REDIS_VERSION
label: Redis Version
description: Check out their valid tags at https://hub.docker.com/_/redis/tags
defaultValue: '7.0-alpine'
validRegex: /.{1,}/
- id: $$cap_NODE_ENV
label: Application Environment
description: Configure the environment.
defaultValue: production
validRegex: /.{1,}/
- id: $$cap_ACCESS_TOKEN_SALT
label: Access Token Salt
description: A random string used as salt for access tokens.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_BASE_CURRENCY
label: Base Currency
description: The base currency of the Ghostfolio application. This can **not** be changed later!
defaultValue: USD
validRegex: /.{1,}/
- id: $$cap_JWT_SECRET_KEY
label: JWT Secret Key
description: A random string used for JSON Web Tokens (JWT).
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_POSTGRES_DB
label: Database
description: The name of the PostgreSQL database.
defaultValue: ghostfolio
validRegex: /.{1,}/
- id: $$cap_POSTGRES_USER
label: Database User
description: The user of the PostgreSQL database.
defaultValue: ghostfolio
validRegex: /.{1,}/
- id: $$cap_POSTGRES_PASSWORD
label: Database Password
description: The password of the PostgreSQL database.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/
- id: $$cap_POSTGRES_ROOT_PASSWORD
label: Database Root User Password
description: The password of the PostgreSQL database root user.
defaultValue: $$cap_gen_random_hex(32)
validRegex: /.{1,}/