mash-playbook/docs/services/outline.md
2023-09-19 13:20:01 +03:00

3.9 KiB

Outline

Outline is an open-source knowledge base for growing teams.

Dependencies

This service requires the following other services:

Configuration

To enable this service, besides enabling the required Dependencies, add the following configuration to your vars.yml file and re-run the installation process:

########################################################################
#                                                                      #
# outline                                                              #
#                                                                      #
########################################################################

outline_enabled: true

outline_hostname: outline.example.com

# This must be generated with: `openssl rand -hex 32`
outline_environment_variable_secret_key: ''

# The configuration below connects Outline to the Redis instance, for session storage purposes.
# You may wish to run a separate Redis instance for Outline, because Redis is not multi-tenant.
# Read more in docs/services/redis.md.
outline_redis_hostname: "{{ redis_identifier if redis_enabled else '' }}"

outline_container_additional_networks_custom: |
  {{
    [redis_container_network]
  }}  

outline_environment_variable_aws_access_key_id: ''
outline_environment_variable_aws_secret_access_key: ''
outline_environment_variable_aws_region: eu-central-1 # example
outline_environment_variable_aws_s3_upload_bucket_url: https://OUTLINE_ASSETS_BUCKET_NAME.s3.eu-central-1.amazonaws.com
outline_environment_variable_aws_s3_upload_bucket_name: OUTLINE_ASSETS_BUCKET_NAME
outline_environment_variable_aws_s3_force_path_style: false

# At least one authentication method MUST be enabled for Outline to work.
# See the "Authentication" section below.

########################################################################
#                                                                      #
# /outline                                                             #
#                                                                      #
########################################################################

URL

In the example configuration above, we configure the service to be hosted at https://outline.example.com.

While the Outline Ansible role provides an outline_path_prefix variable, Outline does not support being hosted at a subpath right now.

Authentication

For Outline to work, at least one authentication method must be enabled.

The Outline Ansible role provides dedicated Ansible variables for configuring these authentication methods via environment variables (see the outline_environment_variable_* variables in defaults/main.yml of ansible-role-outline).

If you need to pass additional environment variables to Outline, for which dedicated Ansible variables are not available, you can use outline_environment_variables_additional_variables.

If you define SMTP settings (see the outline_environment_variable_smtp_* variables in defaults/main.yml), the Email magic link authentication method will be enabled:

Unfortunately, even with SMTP settings being defined, we haven't been able to get Outline to succesfully send emails just yet, hitting issues similar to this one.