Configure a reverse proxy
Local installations of Flow Production Tracking are no longer offered. This documentation is intended only for those with existing instances of Shotgun Enterprise Docker. Click here for a list of our current offerings.
This article is intended for Flow Production Tracking System Administrators. It explains how to configure a reverse proxy that would allow running multiple shotgun-app
containers on one server.
Synopsis
Flow Production Tracking is a service that can be scaled if the traditional single server topology can no longer sustain the load. One of the first optimization steps is to increase the number of Flow Production Tracking Application servers.
We recommend that you set up your own load balancing to distribute the load between your multiple Flow Production Tracking Application servers.
To get you started, we provide an example HAProxy
container that acts as a reverse proxy. This example can be useful if you have a setup with only one shotgun-app
server. The proxy automatically shows a maintenance page if you stop the shotgun-app
container during an upgrade.
Configuring the reverse proxy
Please refer to the Reference Docker Compose file for a configuration example for HAProxy
.
- In your
docker-compose.yml
file, add the proxy service following the reference example - Make sure the lines are not commented out
- Remove the port mapping section from the app service
Finally, start the new container:
sudo docker-compose up -d
Customisation
There are three Docker volumes for the proxy service referenced in the example Docker Compose file:
- proxy/certs: SSL certificates should be placed here.
- proxy/config: This directory contains the haproxy.cfg file.
- proxy/custom_errors: HTML pages to be served by HAProxy should be placed here. A Flow Production Tracking maintenance example is included.
Maintenance
To avoid downtime, you can reload HAProxy
after making configuration changes. New connections will use the modified configuration and existing connections are allowed to finish gracefully. Simply run:
sudo docker-compose exec proxy haproxy-reload
Please note that changes to the proxy service in Docker Compose still require a short downtime to apply by running:
sudo docker-compose up -d
Requirements
- The Flow Production Tracking Application service, in the Docker Compose file, must be named "app"