Add mobilizon + postgis (WIP)
This commit is contained in:
parent
ac812bb193
commit
ba47bb5eac
4 changed files with 184 additions and 0 deletions
58
docs/services/mobilizon.md
Normal file
58
docs/services/mobilizon.md
Normal file
|
@ -0,0 +1,58 @@
|
|||
# GoToSocial
|
||||
|
||||
[Mobilizon](https://joinmobilizon.org/en/) is a ActivityPub/Fediverse server to create and share events here powered by the [mother-of-all-self-hosting/ansible-role-mobilizon](https://github.com/mother-of-all-self-hosting/ansible-role-mobilizon) Ansible role.
|
||||
|
||||
## Configuration
|
||||
|
||||
To enable this service, add the following configuration to your `vars.yml` file. Also you need to enable postgis which will serve as database for mobilizon.
|
||||
After that you can re-run the [installation](../installing.md) process.
|
||||
|
||||
```yaml
|
||||
########################################################################
|
||||
# #
|
||||
# mobilizon #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
mobilizon_enabled: true
|
||||
|
||||
|
||||
# Hostname that this server will be reachable at.
|
||||
# DO NOT change this after your server has already run once, or you will break things!
|
||||
mobilizon_hostname: 'events.example.org'
|
||||
|
||||
# to open registrations uncomment the following line
|
||||
# mobilizon_registrations_open: true
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /mobilizon #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# postgis #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
postgis_enabled: true
|
||||
|
||||
# Put a strong password below, generated with `pwgen -s 64 1` or in another way
|
||||
postgis_connection_password: ''
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /postgis #
|
||||
# #
|
||||
########################################################################
|
||||
```
|
||||
|
||||
After installation, you can use `just run-tags mobilizon-add-user --extra-vars=username=<username> --extra-vars=password=<password> --extra-vars=email=<email>"`
|
||||
to create your a user. Change `--tags=mobilizon-add-user` to `--tags=mobilizon-add-admin` to create an admin account.
|
||||
|
||||
### Usage
|
||||
|
||||
After [installing](../installing.md), you can visit at the URL specified in `mobilizon_hostname` and should see your instance.
|
||||
|
||||
Refer to the [great official documentation](https://docs.gotosocial.org/en/latest/) for more information on GoToSocial.
|
31
docs/services/postgis.md
Normal file
31
docs/services/postgis.md
Normal file
|
@ -0,0 +1,31 @@
|
|||
# Postgis
|
||||
|
||||
[Postgis](https://postgis.net/) is a spatial database extender for PostgreSQL object-relational database. It adds support for geographic objects allowing location queries to be run in SQL.
|
||||
|
||||
Services like [Mobilizon](./mobilizon.md) depend on the ability to store gespatial data.
|
||||
Enabling the PPostgisostgres database service will automatically wire these services to use it.
|
||||
|
||||
|
||||
## Configuration
|
||||
|
||||
To enable this service, add the following configuration to your `vars.yml` file and re-run the [installation](../installing.md) process:
|
||||
|
||||
```yaml
|
||||
########################################################################
|
||||
# #
|
||||
# postgis #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
postgis_enabled: true
|
||||
|
||||
# Put a strong password below, generated with `pwgen -s 64 1` or in another way
|
||||
postgis_connection_password: ''
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /postgis #
|
||||
# #
|
||||
########################################################################
|
||||
```
|
||||
|
|
@ -103,6 +103,8 @@ devture_systemd_service_manager_services_list_auto: |
|
|||
+
|
||||
([{'name': (gotosocial_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'gotosocial']}] if gotosocial_enabled else [])
|
||||
+
|
||||
([{'name': (mobilizon_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'mobilizon']}] if mobilizon_enabled else [])
|
||||
+
|
||||
([{'name': (grafana_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'grafana']}] if grafana_enabled else [])
|
||||
+
|
||||
([{'name': (keycloak_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'keycloak']}] if keycloak_enabled else [])
|
||||
|
@ -125,6 +127,8 @@ devture_systemd_service_manager_services_list_auto: |
|
|||
+
|
||||
([{'name': (peertube_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'peertube']}] if peertube_enabled else [])
|
||||
+
|
||||
([{'name': (postgis_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'metrics', 'postgis']}] if postgis_enabled else [])
|
||||
+
|
||||
([{'name': (prometheus_identifier + '.service'), 'priority': 2000, 'groups': ['mash', 'metrics', 'prometheus']}] if prometheus_enabled else [])
|
||||
+
|
||||
([{'name': (prometheus_blackbox_exporter_identifier + '.service'), 'priority': 500, 'groups': ['mash', 'metrics', 'prometheus-blackbox-exporter']}] if prometheus_blackbox_exporter_enabled else [])
|
||||
|
@ -1165,6 +1169,55 @@ miniflux_database_password: "{{ '%s' | format(mash_playbook_generic_secret_key)
|
|||
########################################################################
|
||||
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# mobilizon #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
mobilizon_enabled: false
|
||||
|
||||
mobilizon_identifier: "{{ mash_playbook_service_identifier_prefix }}mobilizon"
|
||||
|
||||
mobilizon_base_path: "{{ mash_playbook_base_path }}/{{ mash_playbook_service_base_directory_name_prefix }}mobilizon"
|
||||
|
||||
mobilizon_uid: "{{ mash_playbook_uid }}"
|
||||
mobilizon_gid: "{{ mash_playbook_gid }}"
|
||||
|
||||
mobilizon_secret_key: "{{ '%s' | format(mash_playbook_generic_secret_key) | password_hash('sha512', 'sk.mobilizon', rounds=655555) | to_uuid }}"
|
||||
mobilizon_secret_key_base: "{{ '%s' | format(mash_playbook_generic_secret_key) | password_hash('sha512', 'skb.mobilizon', rounds=655555) | to_uuid }}"
|
||||
|
||||
mobilizon_database_hostname: "{{ postgis_identifier if postgis_enabled else '' }}"
|
||||
mobilizon_database_port: "{{ '5432' if postgis_enabled else '' }}"
|
||||
mobilizon_database_password: "{{ '%s' | format(mash_playbook_generic_secret_key) | password_hash('sha512', 'db.mobilizon', rounds=655555) | to_uuid }}"
|
||||
mobilizon_database_username: "{{ mobilizon_identifier }}"
|
||||
|
||||
mobilizon_systemd_required_services_list: |
|
||||
{{
|
||||
(['docker.service'])
|
||||
+
|
||||
([devture_postgres_identifier ~ '.service'] if postgis_enabled and mobilizon_database_host == postgis_identifier else [])
|
||||
}}
|
||||
|
||||
mobilizon_container_additional_networks: |
|
||||
{{
|
||||
([mash_playbook_reverse_proxyable_services_additional_network] if mash_playbook_reverse_proxyable_services_additional_network else [])
|
||||
+
|
||||
([postgis_container_network] if postgis_enabled and mobilizon_database_host == postgis_identifier and mobilizon_container_network != postgis_container_network else [])
|
||||
}}
|
||||
|
||||
mobilizon_container_labels_traefik_enabled: "{{ mash_playbook_traefik_labels_enabled }}"
|
||||
mobilizon_container_labels_traefik_docker_network: "{{ mash_playbook_reverse_proxyable_services_additional_network }}"
|
||||
mobilizon_container_labels_traefik_entrypoints: "{{ devture_traefik_entrypoint_primary }}"
|
||||
mobilizon_container_labels_traefik_tls_certResolver: "{{ devture_traefik_certResolver_primary }}"
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /mobilizon #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
|
@ -1370,6 +1423,44 @@ peertube_systemd_required_services_list_auto: |
|
|||
# #
|
||||
########################################################################
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# postgis #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
postgis_enabled: false
|
||||
|
||||
postgis_identifier: "{{ mash_playbook_service_identifier_prefix }}postgis"
|
||||
|
||||
postgis_architecture: "{{ mash_playbook_architecture }}"
|
||||
|
||||
postgis_base_path: "{{ mash_playbook_base_path }}/{{ mash_playbook_service_base_directory_name_prefix }}postgis"
|
||||
|
||||
postgis_uid: "{{ mash_playbook_uid }}"
|
||||
postgis_gid: "{{ mash_playbook_gid }}"
|
||||
|
||||
postgis_systemd_services_to_stop_for_maintenance_list: |
|
||||
{{
|
||||
([(mobilizon_identifier + '.service')] if miniflux_enabled else [])
|
||||
}}
|
||||
|
||||
postgis_managed_databases_auto: |
|
||||
{{
|
||||
([{
|
||||
'name': mobilizon_database_name,
|
||||
'username': mobilizon_database_username,
|
||||
'password': mobilizon_database_password,
|
||||
}] if mobilizon_enabled and mobilizon_database_type == 'postgis' and mobilizon_database_hostname == postgis_identifier else [])
|
||||
}}
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
# /postgis #
|
||||
# #
|
||||
########################################################################
|
||||
|
||||
|
||||
|
||||
########################################################################
|
||||
# #
|
||||
|
|
|
@ -82,6 +82,8 @@
|
|||
|
||||
- role: galaxy/keycloak
|
||||
|
||||
- role: galaxy/mobilizon
|
||||
|
||||
- role: galaxy/navidrome
|
||||
|
||||
- role: galaxy/netbox
|
||||
|
@ -92,6 +94,8 @@
|
|||
|
||||
- role: galaxy/peertube
|
||||
|
||||
- role: galaxy/postgis
|
||||
|
||||
- role: galaxy/prometheus
|
||||
- role: galaxy/prometheus_node_exporter
|
||||
- role: galaxy/prometheus_blackbox_exporter
|
||||
|
|
Loading…
Reference in a new issue