Prerequisites
There are several prerequisites for deploying Omni on-prem. We will assume you have an Ubuntu machine available. Any distribution with Docker should work.Install Docker
Install Docker according to the Ubuntu installation guide here. You will also need the docker compose plugin package if you want to use the example docker compose template.Generate Certs
On-prem Omni will require valid SSL certificates. This means that self-signed certs will not work. Generating certificates is left as an exercise to the user, but here is a rough example that was tested using DigitalOcean’s DNS integration with certbot to generate certificates. The process should be very similar for other providers like Route53.Configure Authentication
Auth0
Create an Auth0 account. On the account level, configure “Authentication - Social” to allow GitHub and Google login. Create an Auth0 application of the type “single page web application”. Configure the Auth0 application with the following:- Allowed callback URLs:
https://<domain name for onprem omni> - Allowed web origins:
https://<domain name for onprem omni> - Allowed logout URLs:
https://<domain name for onprem omni>
- Domain
- Client ID
SAML Identity Providers
Other identity providers also work with Omni. Configuring these should be similar to Auth0.Create Etcd Encryption Key
Generate a GPG key:Deploy Omni
There are two easy ways to run Omni: docker-compose and a simpledocker run. We recommend using docker-compose, but both are detailed in separate tabs below.
- Docker Compose
- Docker Run
Export variables
You will need to specify some customizations for your installation. Export these variables with your information to use in the provided templatesIf you are running multiple Omni instances connected to a shared etcd backend you will need to set the
accountUUID to a unique value. If you are not using shared backend storage then this option does not need to be unique.