Rhizome-Conifer / conifer-deploy

Conifer setup and deployment via Ansible
Apache License 2.0
12 stars 7 forks source link
ansible-playbook web-archiving webrecorder

Conifer Deployment (using Ansible)

Tested on Ubuntu 14.04, 16.04, CentOS 7

A production-ready Ansibile playbook for configuring and deploying Conifer.

This setup is used for the https://conifer.rhizome.org/ deployment.

The run.sh script installs Ansible, if not already installed, on the current host. The playbook installs nginx, generates new certs using Let's Encrypt, installs Docker, and latest Webrecorder code

For production, a separate domain for the Conifer application and for the domain serving recorded content is stongly recommended due to potential security issues of single-domain setup. (Slides from our talk on this issue)

The following deployment options are available:

Installs front-end nginx, Docker and gets SSL certs from Lets Encrypt for wr_app_host and wr_content_host domains, and then starts Conifer in Docker. Strongly recommendeded for wr_app_host and wr_content_host domains to be separate domains

Usage: ./run.sh "wr_app_host=example.conifer.io wr_content_host=content.conifer.io"

Conifer should then be accessible via https://example.conifer.io and content loaded from https://content.conifer.io

Same as above, but uses only a single domain. Installs front-end nginx and gets SSL certs from Lets Encrypt

Usage: ./run.sh "wr_app_host=example.conifer.io"

Conifer should then be accessible via https://example.conifer.io and content is also loaded from the same domain.

Installs Docker only, no front-end nginx or ssl certs

Usage: ./run.sh

Conifer accessible on port 8089 via: http://localhost:8089/, but not on port 80.