Use Docker Compose
Minimum requirements for the Aviator server
Prerequisites
Ubuntu or Debian installation on the box.
You need to be able to SSH or have a console access to it.
You need a root access on it.
Docker engine needs to be installed. You can follow instructions here.
The secrets file provided by Aviator.
A domain name that can be assigned to the Linux box.
Variable definitions
$GITHUB_URL
: Hostname where GitHub is hosted
$AV_HOSTNAME
: Hostname where Aviator is hosted (e.g. aviator.example.com
)
$GITHUB_APP_ID
: ID generated when a GitHub app is created
$GITHUB_CLIENT_ID
: Client ID of the GitHub app, you can find this in the General settings of the app.
$GITHUB_CLIENT_SECRET
: Client Secret of the GitHub app, you can generate a client secret in the General settings for the app.
$MERGEQUEUE_PEM_FILE
: Private key generated by GitHub for Aviator
Step 1
Configure the DNS records so that $AV_HOSTNAME
points to your Linux box. Depending on your DNS, this may take some time to propagate. Make sure the hostname resolves before moving on.
Step 2
Follow GitHub App for On-Prem to create $GITHUB_APP_ID
and $MERGEQUEUE_PEM_FILE
.
Step 3
Verify that Docker engine is installed and running, otherwise follow the instructions here to install.
Step 4
Create /opt/mergequeue/keys
directory and copy $MERGEQUEUE_PEM_FILE
there. The file name must be mergequeue.pem
.
Step 5
Extract the aviator.zip
file provided by us, and open enterprise/install.sh
in your favorite editor. There are configs around the top of the script. You will need to modify the variables there. Here are some details for each secret value:
Value | Description |
---|---|
| Provided in the secrets file, used to pull Docker images. |
| Provided in the secrets file. |
| Email used by LetsEncrypt. This is where you will get emails about expiring certificates. During our setup of LetsEncrypt certificate, we also enable auto-renewal cron. |
| Same as |
| Same as |
| The same |
| We use sumo logic for log tracking. These values should be provided to you in the keys. |
| The same |
Save the file.
Step 6
Once the configurations above are set, run the install script. This will pull, build and start all the docker containers required for the Aviator service.
At the end of that script, it will run docker-compose up -d to start the containers as detached. You can verify that the containers are running by:
At this point, you should be able to open $AV_HOSTNAME
in the browser.
Step 7
Once the page loads, you can go and register a new account from the following url on the app and follow the instructions.
It will guide you to connect the GitHub Repository with the GitHub app you created. Once authorized, you should see the connected repositories on your Repository page.
Use the same account for all purposes. You can invite other team members to this account from the Account / Users and Roles section.
Note that registering multiple accounts is disabled for on-prem, if you need additional accounts please contact support@aviator.co.
Troubleshooting
If the setup above fails, or docker fails to start containers, please reach out to the Aviator team. And share the output of install script along with logs from docker-compose:
Last updated