oneuptime/config.example.env
2023-08-22 18:44:35 +01:00

236 lines
7.1 KiB
Bash

#!/usr/bin/env bash
# Which domain is this server hosted on? replace this with oneuptime.yourdomain.com or yourdomain.com. You can also set it to a server/VM IP address.
DOMAIN=localhost
# Secrets - PLEASE CHANGE THESE. Please change these to something random. All of these can be different values.
ONEUPTIME_SECRET=please-change-this-to-random-value
DATABASE_PASSWORD=please-change-this-to-random-value
CLICKHOUSE_PASSWORD=please-change-this-to-random-value
REDIS_PASSWORD=please-change-this-to-random-value
ENCRYPTION_SECRET=please-change-this-to-random-value
TOKEN_SECRET=please-change-this-to-random-value
GLOBAL_PROBE_1_KEY=please-change-this-to-random-value
GLOBAL_PROBE_2_KEY=please-change-this-to-random-value
MINIO_ROOT_PASSWORD=please-change-this-to-random-value
INTERNAL_SMTP_PASSWORD=please-change-this-to-random-value
# Is this server hosted with a TLS cert (for ex: SSL from LetsEncrypt / Cloudflare). If yes, this should be "https"
HTTP_PROTOCOL=http
# OneUptime Port. This is the port where OneUptime will be hosted on.
ONEUPTIME_HTTP_PORT=80
ONEUPTIME_HTTPS_PORT=443
# SMTP SETTINGS. You need to change these if you like emails to be sent.
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_PORT=
SMTP_EMAIL=
SMTP_FROM_NAME=
SMTP_IS_SECURE=
SMTP_HOST=
# If you would like to attach status page to custom domains use this setting.
# For example, lets say you would like the status page to be hosted on status.yourcompany.com, then
# 1. Create a A record in your DNS provider with the name "oneuptime.yourcompany.com" and value to Public IP of the server oneuptime is deployed on.
# 2. Set the STATUS_PAGE_CNAME_RECORD to "oneuptime.yourcompany.com"
# 3. Create CNAME record in your DNS provider with the name "status.yourcompany.com" and value "oneuptime.yourcompany.com"
STATUS_PAGE_CNAME_RECORD=oneuptime.yourcompany.com
# --------------------------------------------- #
# You can safely ignore anything below this line. Keep them as default to make things work.
# --------------------------------------------- #
# This supports test | production | development | ci.
# Development is used for local development. Test is used for insider / beta / staging builds. Production is used for production ready app. ci is for testing in the CI/CD.
ENVIRONMENT=production
# What image should we pull from docker hub. This only applies when the ENVIRONMENT is production or test
APP_TAG=release
# What is the name of the docker-compose project. This is used to prefix the docker containers.
COMPOSE_PROJECT_NAME=oneuptime
# Clickhouse Settings
CLICKHOUSE_USER=default
CLICKHOUSE_DATABASE=oneuptime
CLICKHOUSE_HOST=clickhouse
CLICKHOUSE_PORT=8123
# Minio User Credentials.
MINIO_ROOT_USER=oneuptime
# Postgres DB Settings.
DATABASE_PORT=5432
DATABASE_USERNAME=postgres
DATABASE_NAME=oneuptimedb
DATABASE_HOST=postgres
# Used to connect to managed postgres providers.
# Fill only what your provider needs.
DATABASE_SSL_REJECT_UNAUTHORIZED=false
DATABASE_SSL_CA=
DATABASE_SSL_KEY=
DATABASE_SSL_CERT=
# Redis DB Settings.
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_DB=0
REDIS_USERNAME=default
REDIS_TLS_CA=
REDIS_TLS_SENTINEL_MODE=false
DISABLE_SIGNUP=false
# Hostnames. Usually does not need to change.
REALTIME_HOSTNAME=realtime:3300
NOTIFICATION_HOSTNAME=notification:3191
DASHBOARD_HOSTNAME=dashboard:3000
DASHBOARD_API_HOSTNAME=dashboard-api:3002
WORKFLOW_HOSTNAME=workflow:3099
LINK_SHORTENER_HOSTNAME=link-shortener:3521
ALERT_HOSTNAME=alert:3088
PROBE_API_HOSTNAME=probe-api:3400
TEST_SERVER_HOSTNAME=test-server:3800
DATA_INGESTOR_HOSTNAME=data-ingestor:3200
ACCOUNTS_HOSTNAME=accounts:3003
HOME_HOSTNAME=home:1444
WORKER_HOSTNAME=worker:3452
API_DOCS_HOSTNAME=api-reference:1445
# Routes. Usually does not need to change.
REALTIME_ROUTE=/realtime
API_DOCS_ROUTE=/reference
NOTIFICATION_ROUTE=/notification
DASHBOARD_ROUTE=/dashboard
DASHBOARD_API_ROUTE=/api
WORKFLOW_ROUTE=/workflow
LINK_SHORTENER_ROUTE=/l
ALERT_ROUTE=/alert
TEST_SERVER_API_ROUTE=/test-server
PROBE_API_ROUTE=/probe-api
DATA_INGESTOR_ROUTE=/data-ingestor
ACCOUNTS_ROUTE=/accounts
HOME_ROUTE=
HELMCHARTS_ROUTE=/charts
API_REFERENCE_ROUTE=/reference
IDENTITY_ROUTE=/identity
FILE_ROUTE=/file
STATUS_PAGE_ROUTE=/status-page
#Ports. Usually they don't need to change.
DASHBOARD_API_PORT=3002
API_DOCS_PORT=1445
WORKFLOW_PORT=3099
LINK_SHORTENER_PORT=3521
ALERT_PORT=3088
PROBE_API_PORT=3400
PROBE_PORT=3500
TEST_SERVER_PORT=3800
FILE_PORT=3125
HOME_PORT=1444
IDENTITY_PORT=3087
NOTIFICATION_PORT=3191
REALTIME_PORT=3300
WORKERS_PORT=3452
ACCOUNTS_PORT=3003
STATUS_PAGE_PORT=3105
DASHBOARD_PORT=3009
# Internal SMTP Server - Haraka
USE_INTERNAL_SMTP=false
# If USE_INTERNAL_SMTP is true then you need to fill these values.
INTERNAL_SMTP_DKIM_PRIVATE_KEY_AS_BASE64=
INTERNAL_SMTP_DKIM_PUBLIC_KEY_AS_BASE64=
INTERNAL_SMTP_EMAIL=test@yourcompany.com
INTERNAL_SMTP_SENDING_DOMAIN=yourcompany.com
# Safely ignore these.
INTERNAL_SMTP_USERNAME=oneuptime
INTERNAL_SMTP_PORT=2525
INTERNAL_SMTP_FROM_NAME=OneUptime
INTERNAL_SMTP_IS_SECURE=false
INTERNAL_SMTP_HOST=haraka
INTERNAL_SMTP_DKIM_SELECTOR=oneuptime
# Licensing Database
AIRTABLE_API_KEY=
AIRTABLE_BASE_ID=
# Plans
# This is in the format of PlanName,PlanIdFromBillingProvider,MonthlySubscriptionPlanAmountInUSD,YearlySubscriptionPlanAmountInUSD,Order,TrialPeriodInDays
# Enterprise plan will have -1 which means custom pricing.
SUBSCRIPTION_PLAN_BASIC=Basic,priceMonthlyId,priceYearlyId,0,0,1,0
SUBSCRIPTION_PLAN_GROWTH=Growth,priceMonthlyId,priceYearlyId,0,0,2,14
SUBSCRIPTION_PLAN_SCALE=Scale,priceMonthlyId,priceYearlyId,0,0,3,0
SUBSCRIPTION_PLAN_ENTERPRISE=Enterprise,priceMonthlyId,priceYearlyId,-1,-1,4,14
DATABASE_BACKUP_DIRECTORY=/Backups
DATABASE_BACKUP_HOST=localhost
DATABASE_BACKUP_PORT=5400
DATABASE_BACKUP_NAME=oneuptimedb
DATABASE_BACKUP_USERNAME=postgres
DATABASE_BACKUP_PASSWORD=${DATABASE_PASSWORD}
DATABASE_RESTORE_DIRECTORY=/Backups
DATABASE_RESTORE_HOST=localhost
DATABASE_RESTORE_PORT=5400
DATABASE_RESTORE_NAME=oneuptimedb
DATABASE_RESTORE_USERNAME=postgres
DATABASE_RESTORE_PASSWORD=${DATABASE_PASSWORD}
DATABASE_RESTORE_FILENAME=db-31.backup
ANALYTICS_KEY=
ANALYTICS_HOST=
DATABASE_MIGRATIONS_HOST=localhost
DATABASE_MIGRATIONS_PORT=5400
# Global Probes
# This is in the format of GLOBAL_PROBE_NAME=ProbeName,ProbeDescription,ProbeKey
GLOBAL_PROBE_1_NAME="Probe-1"
GLOBAL_PROBE_1_DESCRIPTION="Global probe to monitor oneuptime resources"
GLOBAL_PROBE_1_MONITORING_WORKERS=5
GLOBAL_PROBE_1_MONITOR_FETCH_LIMIT=10
GLOBAL_PROBE_2_NAME="Probe-2"
GLOBAL_PROBE_2_DESCRIPTION="Global probe to monitor oneuptime resources"
GLOBAL_PROBE_2_MONITORING_WORKERS=5
GLOBAL_PROBE_2_MONITOR_FETCH_LIMIT=10
SENDGRID_API_KEY=
# METERED PLANS: This is in the format of MONTHLY_PRICE_ID,YEARLY_PRICE_ID,value per unit,unitName
METERED_PLAN_ACTIVE_MONITORING=priceMonthlyId,1,active-monitor,month
# Twilio Settings
TWILIO_ACCOUNT_SID=
TWILIO_AUTH_TOKEN=
TWILIO_PHONE_NUMBER=
SMS_DEFAULT_COST_IN_CENTS=
CALL_DEFAULT_COST_IN_CENTS_PER_MINUTE=
# IS BILLING ENABLED for this installer.
BILLING_ENABLED=false
# Public and private key for billing provider, usually stripe.
BILLING_PUBLIC_KEY=
BILLING_PRIVATE_KEY=
# Use this when you want to disable incident creation.
DISABLE_AUTOMATIC_INCIDENT_CREATION=false