Skip to content

Server Configuration

Michael J Pearson edited this page Dec 2, 2015 · 1 revision

Configuration files can be found under /config/{environment}.json where environment is the shell export NODE_ENV. If NODE_ENV can not be found as an environment variable, development will be used.

The first time you setup bip.io via make install, it will ask you some questions which populate into the config json file. The template for this file is config.json-dist

Variables

  • domain_public (string) public facing default domain (fqdn), including port # if applicable
  • website_public (string) proxying website (user space oauth confirm for example)
  • oembed_host (string) oembed rendering host
  • cdn_public (string) default public assets URI
  • proto_public (string) public protocol for resolving HTTP bip endpoints, http or https
  • crons (object) periodic scheduler Cron Expressions
    • stat (string) global stats runner
    • trigger (string) trigger runner
    • expire (string) bip expirer
  • timezone (string) Timezone (eg: GMT, Asia/Tokyo etc)
  • server (object) Server Config
    • port (integer) TCP Listen Port
    • host (string, optional) IP Address. Omit to listen on all interfaces
    • sessionSecret (string) autogenerated session secret
    • forks (integer) #forks. When empty, uses 1 fork/CPU.
    • public_interfaces (array, optional) list of resolvable IP's (V4|V6) for internal domain resolution. omit to autodiscover.
    • ssl (object, optional) key and certificate paths for SSL
      • key (string) key path
      • cert (string) certificate path
  • mailer (object) Outbound Mailer Config
    • port (string) Relay Port
    • host (string) Relay host or IP
    • auth (object, optional) SMTP Authentication Credentials
      • username Username
      • password Password
  • dbMongo (object) MongoDB Connect
  • data_dir (string) file based data repo, relative to installation path
  • cdn (string) file based cdn data (pointed to via cdn_public), relative to installation path
  • k (object) AES Keychain, for encrypting private user space data by version.
    • # (string) version # = key, eg: "5": "d767500f84eecec0d8944db8bb4a549f"
  • auth (object) user authentication strategy definition
    • type (string) one of 'native' (local mongodb server) or 'ldap' (LDAP server auth). Default 'native'.
    • config (object) strategy config (ldap only at present)
      • server (object) ldapjs constructor options
      • filter (object) ldapjs search filter
      • base (string) dn base path
      • auto_sync (object, optional) enable local user create from ldap auth
        • mail_field (string) name of entity email field
  • jwtKey JWT Key for signed requests Learn More
  • pods (object) Pod Config. Sparse Config populated via tools/pod-install.js see Pods for more info.
  • rabbit (object) RabbitMQ Server + Queue Configs
    • host (string) RabbitMQ Host (FQDN)
    • vhost (string, optional) Virtual Host, including prefix slash, eg: /bipio_production
    • auth (object) RabbitMQ Client Authentication
      • username (string) Username
      • password (string) Password
    • exchanges (object) System Queue definitions
  • transforms (object) Transform Corpus Sync
    • fetch (boolean) transform fetch enabled
    • syncFrom (string, URL) transforms source host
Clone this wiki locally