Ansible role to install OpenSlides
Go to file
Brain dbf5b2a058
continuous-integration/drone/push Build is passing Details
Merge pull request 'Update Docker tag to v0.21.0' (#10) from renovate/ into main
Reviewed-on: #10
2023-10-27 12:50:21 +02:00
defaults Make repo configurable 2022-06-22 16:26:15 +02:00
handlers Fix linting issue 2023-06-21 12:45:56 +02:00
tasks Make repo configurable 2022-06-22 16:26:15 +02:00
templates Always (re)start proxy 2022-10-05 15:40:03 +02:00
.drone.yml Update Docker tag to v0.21.0 2023-10-20 07:34:49 +00:00
.yamllint First working version 2022-05-25 20:55:35 +02:00
LICENSE Update license 2022-05-25 19:31:09 +02:00 Update README 2022-05-25 21:38:53 +02:00
renovate.json Use base config 2023-03-06 23:30:50 +01:00

Ansible role for OpenSlides

This role installs OpenSlides.


You need to have Docker Compose installed on the target host. We used geerlingguy.docker for that.

Important variables

You can discover all the available variables in the defaults/main.yml file.

The variables openslides_django_secret_key and openslides_admin_password are mandatory. Generate long and secure random values for both of them.

When you execute the playbook and the Git repo on the target host changes, the Docker images get rebuilt. You may want to have control over when that happens. Thus, it is recommended that you set the openslides_repo_version to a fixed commit hash.

By default, connections for all hosts are allowed. Use the openslides_allowed_hosts list to limit access to certain hosts, like:

  - "{{ openslides_instance_domain }}"

Running behind a reverse proxy

The official docs can show you how to set up HTTPS for OpenSlides.

If you want to use nginx to terminate TLS use the following settings:

openslides_external_http_port: 8000
openslides_external_https_port: ""

Instruct nginx to listen for http2 connections and set up the proxy as follows:

location / {
    proxy_buffering off;


See LICENSE file