The Ethical Ad Server is intended to be run on any host that can run a Dockerized application, such as Heroku, AWS Elastic Beanstalk, Azure App Service, or on your own infrastructure. It can also be run directly on virtual machines. It is intended to be run with:

  • PostgreSQL
  • Redis

Configuring the ad server

The ad server is configured by environment variables. See the document outlining them.

Set the ad server URL

After configuring the ad server and setting up the database, you’ll need to set the URL for the ad server. This URL is used to create links to the ad server when clicking or viewing ads.

  • Login to the administration interface.
  • Under Sites, click on the first and only Site
  • Set the domain to be a domain without scheme (eg. not http://...)
Configuring the ad server URL

Configuring the ad server URL

Building the Docker image

Production Docker support

The process of setting up your own production installation is not supported by us. The Docker image is provided as a template for your setup.

Building the Docker image is only necessary if you need to heavily customize the ad server. To build this, you’ll need to have Docker installed and you’ll probably want the GeoIP database command geoipupdate installed and configured so that the ad server can convert IP addresses to cities and countries for ad targeting purposes.

$ make geoip dockerprod