mirror of
https://github.com/OneUptime/oneuptime
synced 2024-11-23 07:42:10 +00:00
223 lines
6.8 KiB
Bash
223 lines
6.8 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
|
|
|
|
# OneUptime Port. This is the port where OneUptime will be hosted on.
|
|
ONEUPTIME_HTTP_PORT=80
|
|
ONEUPTIME_HTTPS_PORT=443
|
|
|
|
|
|
# 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
|
|
ADMIN_DASHBOARD_HOSTNAME=admin-dashboard:3158
|
|
|
|
# Routes. Usually does not need to change.
|
|
REALTIME_ROUTE=/realtime
|
|
API_DOCS_ROUTE=/reference
|
|
NOTIFICATION_ROUTE=/notification
|
|
DASHBOARD_ROUTE=/dashboard
|
|
ADMIN_DASHBOARD_ROUTE=/admin
|
|
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
|
|
ADMIN_DASHBOARD_PORT=3158
|
|
|
|
|
|
|
|
# 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
|
|
|
|
|
|
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
|