Added friendica draft and solved mariadb bug

This commit is contained in:
Kevin Veen-Birkenbach 2025-01-10 17:42:44 +01:00
parent 5aedb71d1c
commit 0fe33fc9e3
7 changed files with 70 additions and 6 deletions

View File

@ -127,6 +127,7 @@ domain_baserow: "baserow.{{top_domain}}"
domain_bigbluebutton: "meet.{{top_domain}}"
domain_discourse: "forum.{{top_domain}}"
domain_elk: "elk.{{top_domain}}"
domain_friendica: "friendica.{{top_domain}}"
domain_funkwhale: "music.{{top_domain}}"
domain_gitea: "git.{{top_domain}}"
domain_gitlab: "gitlab.{{top_domain}}"

View File

@ -268,6 +268,15 @@
domain: "{{domain_taiga}}"
http_port: 8027
- name: setup friendica hosts
hosts: friendica
become: true
roles:
- role: docker-friendica
vars:
domain: "{{domain_friendica}}"
http_port: 8028
# Native Webserver Roles
- name: setup nginx-homepages
hosts: homepage

View File

@ -0,0 +1,4 @@
# role friendica
## More information
- https://hub.docker.com/_/friendica

View File

@ -0,0 +1,10 @@
---
- name: "include docker/compose/database.yml"
include_tasks: docker/compose/database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml
notify: docker compose project setup

View File

@ -0,0 +1,37 @@
services:
{% include 'templates/docker/services/' + database_type + '.yml.j2' %}
application:
image: friendica
restart: always
volumes:
- data:/var/www/html
ports:
- "127.0.0.1:{{http_port}}:80"
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 1m
timeout: 10s
retries: 3
environment:
- FRIENDICA_URL="https://{{domain}}"
- FRIENDICA_ADMIN_MAIL={{administrator_email}}
- MYSQL_HOST={{database_host}}:3306
- MYSQL_DATABASE={{database_name}}
- MYSQL_USER={{database_username}}
- MYSQL_PASSWORD={{database_password}}
- SMTP={{system_email_host}}
- SMTP_DOMAIN={{ system_email_host }}
- SMTP_PORT={{system_email_smtp_port}}
- SMTP_AUTH_USER={{system_email_username}}
- SMTP_AUTH_PASS={{system_email_password}}
- SMTP_STARTTLS={{system_email_start_tls}}
- SMTP_FROM={{system_email_username}}
{% include 'templates/docker/container/networks.yml.j2' %}
{% include 'templates/docker/container/depends-on-just-database.yml.j2' %}
{% include 'templates/docker/compose/volumes.yml.j2' %}
data:
{% include 'templates/docker/compose/networks.yml.j2' %}

View File

@ -0,0 +1,3 @@
docker_compose_project_name: "friendica"
database_password: "{{friendica_database_password}}"
database_type: "mariadb"

View File

@ -48,12 +48,6 @@
login_host: 127.0.0.1
login_port: 3306
- name: Grant database privileges
ansible.builtin.shell:
cmd: "docker exec central-mariadb mariadb -u root -p{{ central_mariadb_root_password }} -e \"GRANT ALL PRIVILEGES ON {{database_name}}.* TO '{{database_username}}'@'%';\""
args:
executable: /bin/bash
- name: "Create database user: {{ database_username }}"
mysql_user:
name: "{{database_username}}"
@ -66,6 +60,12 @@
login_host: 127.0.0.1
login_port: 3306
- name: Grant database privileges
ansible.builtin.shell:
cmd: "docker exec central-mariadb mariadb -u root -p{{ central_mariadb_root_password }} -e \"GRANT ALL PRIVILEGES ON {{database_name}}.* TO '{{database_username}}'@'%';\""
args:
executable: /bin/bash
- name: run the docker_mariadb tasks once
set_fact:
run_once_docker_mariadb: true