The application has an internal default configuration, that you can override and set your own. This will make the FireBack highly configurable.

You need to pass the address of this file via CONFIG_PATH env variable.

Example:

CONFIG_PATH=~/config.yml ENV=production ./fireback

You need to set 2 env variables inside your systemd service (For Ubuntu Servers) or similar correspondence on the other operating systems.

gin:
  mode: debug # set to release

publicServer:
  enabled: true
  host: "localhost"
  port: 4500

backOfficeServer:
  # This port gives sudo access to the all operations. Make sure you close this port
  # on public traffic and access only using VPN.
  enabled: true
  host: "localhost"
  port: 46702

database:
  vendor: sqlite
  database: /tmp/fireback.db
  #  Use there variables for mysql instead
  #  vendor: mysql
  #  database: mydb
  #  username: root
  #  password: root
  #  host: localhost
  #  port: 3306

mailServer:
  # At the moment, we only support the sendgrid for sending mails
  # You need to create an account there, and get your API key
  provider: sendgrid
  apiKey: Get your API Key from sendgrid and put here
  senderName: Jack Anderson
  senderAddress: noreply@yourdomain.com

mailTemplates:
  # These emails are being sent when user creates and account
  # requests for changing password, or invited to a new workspace
  # They are necessary for completing an operation
  confirmMail:
    enabled: true
    url: http://localhost:4500/confirm/email/{{key}}
    subject: Confirm Your email

  forgetPasswordRequest:
    enabled: true
    url: http://localhost:4500/reset-password/{{key}}
    subject: Reset your password

  acceptWorkspaceInvitation:
    enabled: true
    url: http://localhost:4500/workspace/acceptInvite/{{key}}
    subject: "Invite to: {{workspaceName}}"

development:
  # Override all emails to go to specific email, for testing purpose only
  forwardMails: test-mail@gmail.com
  forwardMailsName: My full name