diff --git a/compose/matrix/docker-compose.yml b/compose/matrix/docker-compose.yml index 740be48..a8523e5 100644 --- a/compose/matrix/docker-compose.yml +++ b/compose/matrix/docker-compose.yml @@ -14,9 +14,9 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - synapse_data:/data + - /data/share/matrix:/data - /etc/letsencrypt/live/matrix.niefelheim.com:/data/tls:ro - - /usr/local/share/docker/shared_secret_authenticator.py:/usr/local/lib/python3.11/site-packages/shared_secret_authenticator.py + - /data/share/matrix/shared_secret/shared_secret_authenticator.py:/usr/local/lib/python3.11/site-packages/shared_secret_authenticator.py sliding-sync: image: ghcr.io/matrix-org/sliding-sync:latest container_name: sliding-sync @@ -49,7 +49,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - maubot_data:/data + - /data/share/matrix/maubot:/data mautrix_discord: image: dock.mau.dev/mautrix/discord:latest container_name: mautrix_discord @@ -62,7 +62,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_discord_data:/data + - /data/share/matrix/discord-bridge:/data mautrix_instagram: image: dock.mau.dev/mautrix/instagram:latest container_name: mautrix_instagram @@ -75,7 +75,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_instagram_data:/data + - /data/share/matrix/instagram-bridge:/data mautrix_meta: image: dock.mau.dev/mautrix/meta:latest hostname: mmeta @@ -88,7 +88,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_meta_data:/data + - /data/share/matrix/meta-bridge:/data mautrix_telegram: image: dock.mau.dev/mautrix/telegram:latest hostname: mtelegram @@ -101,7 +101,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_telegram_data:/data + - /data/share/matrix/telegram-bridge:/data mautrix_twitter: image: dock.mau.dev/mautrix/twitter:latest hostname: mtwitter @@ -114,7 +114,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_twitter_data:/data + - /data/share/matrix/twitter-bridge:/data mautrix_whatsapp: image: dock.mau.dev/mautrix/whatsapp:latest hostname: mwhatsapp @@ -127,24 +127,7 @@ services: - GID=991 - TZ=Europe/Stockholm volumes: - - mautrix_whatsapp_data:/data -volumes: - synapse_data: - external: true - maubot_data: - external: true - mautrix_discord_data: - external: true - mautrix_instagram_data: - external: true - mautrix_meta_data: - external: true - mautrix_telegram_data: - external: true - mautrix_twitter_data: - external: true - mautrix_whatsapp_data: - external: true + - /data/share/matrix/whatsapp-bridge:/data networks: Matrix: external: true diff --git a/compose/pim/docker-compose.yml b/compose/pim/docker-compose.yml index f34de86..e82d047 100644 --- a/compose/pim/docker-compose.yml +++ b/compose/pim/docker-compose.yml @@ -42,7 +42,7 @@ services: - QUEUE_CONNECTION=sync volumes: - /run/mysqld/mysqld.sock:/var/run/mysqld/mysqld.sock - - monica:/var/www/html/storage + - monica:/config volumes: monica: external: true diff --git a/swarm/matrix-synapse-stack/docker-compose.yml b/swarm/matrix-synapse-stack/docker-compose.yml new file mode 100644 index 0000000..2d6adbf --- /dev/null +++ b/swarm/matrix-synapse-stack/docker-compose.yml @@ -0,0 +1,181 @@ +version: "3.9" + +networks: + bots: + matrix: + + +services: + # Synapse - Matrix server + synapse: + image: matrixdotorg/synapse:latest + container_name: synapse + restart: unless-stopped + networks: + - matrix + - bots + env_file: + - synapse.env + hostname: synapse + ports: + - "8008:8008" + volumes: + - /data/share/matrix:/data + - /data/share/matrix/shared_secret/shared_secret_authenticator.py:/usr/local/lib/python3.11/site-packages/shared_secret_authenticator.py + # Sliding-sync V3 server + sliding-sync: + image: ghcr.io/matrix-org/sliding-sync:latest + container_name: sliding-sync + restart: unless-stopped + depends_on: + - synapse + networks: + - matrix + env_file: + - sliding-sync.env + hostname: syncv3 + ports: + - "2112:2112" + - "8009:8009" + # ELEMENT WEB CLIENT + element: + image: vectorim/element-web + container_name: element + restart: unless-stopped + depends_on: + - synapse + networks: + - matrix + + # Synapse Admin + admin: + image: awesometechnologies/synapse-admin + container_name: admin + restart: unless-stopped + networks: + - matrix + ports: + - "8724:80" + + # Maubot bot-mother + maubot: + image: dock.mau.dev/maubot/maubot:latest + container_name: maubot + restart: unless-stopped + networks: + - matrix + - bots + depends_on: + - synapse + hostname: maubot + ports: + - 29316:29316 + env_file: + - maubot.env + volumes: + - /data/share/matrix/maubot:/data + + # Mautrix discord bot + mautrix_discord: + image: dock.mau.dev/mautrix/discord:latest + container_name: mautrix_discord + hostname: mdiscord + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/discord-bridge:/data + + # Mautrix instragram bot + mautrix_instagram: + image: dock.mau.dev/mautrix/instagram:latest + container_name: mautrix_instagram + hostname: minstagram + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/instagram-bridge:/data + + # Mautrix meta bot + mautrix_meta: + image: dock.mau.dev/mautrix/meta:latest + hostname: mmeta + container_name: mautrix_meta + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/meta-bridge:/data + + # Mautrix telegram bot + mautrix_telegram: + image: dock.mau.dev/mautrix/telegram:latest + hostname: mtelegram + container_name: mautrix_telegram + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/telegram-bridge:/data + + # Mautrix twitter bot + mautrix_twitter: + image: dock.mau.dev/mautrix/twitter:latest + hostname: mtwitter + container_name: mautrix_twitter + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/twitter-bridge:/data + + # Mautrix WhatsApp bot + mautrix_whatsapp: + image: dock.mau.dev/mautrix/whatsapp:latest + hostname: mwhatsapp + container_name: mautrix_whatsapp + restart: unless-stopped + networks: + - bots + depends_on: + - synapse + env_file: + - mautrix.env + volumes: + - /data/share/matrix/whatsapp-bridge:/data + + # Webhooks + #webhook-service: + # container_name: webhook-service + # image: turt2live/matrix-appservice-webhooks + # restart: unless-stopped + # networks: + # - bots + # - matrix + # ports: + # - "29317:29316" + # depends_on: + # - synapse + # volumes: + # - /data/share/matrix/webhooks:/data diff --git a/swarm/matrix-synapse-stack/maubot.env b/swarm/matrix-synapse-stack/maubot.env new file mode 100644 index 0000000..8ebba0f --- /dev/null +++ b/swarm/matrix-synapse-stack/maubot.env @@ -0,0 +1,3 @@ +UID=998 +GID=991 +TZ=Europe/Stockholm diff --git a/swarm/matrix-synapse-stack/mautrix.env b/swarm/matrix-synapse-stack/mautrix.env new file mode 100644 index 0000000..8ebba0f --- /dev/null +++ b/swarm/matrix-synapse-stack/mautrix.env @@ -0,0 +1,3 @@ +UID=998 +GID=991 +TZ=Europe/Stockholm diff --git a/swarm/matrix-synapse-stack/sliding-sync.env b/swarm/matrix-synapse-stack/sliding-sync.env new file mode 100644 index 0000000..63be63c --- /dev/null +++ b/swarm/matrix-synapse-stack/sliding-sync.env @@ -0,0 +1,8 @@ +SYNCV3_SERVER=http://synapse:8008 +SYNCV3_SECRET=14b82584030154fc47f23fc8177fabf9c795ea3b4a6e11d32f452b353809cbe8 +SYNCV3_BINDADDR=:8009 +SYNCV3_DB=user=syncv3 dbname=syncv3 sslmode=disable host=192.168.1.161 password='SyncoptIcon' +# SYNCV3_PROM=:2112 +UID=998 +GID=991 +TZ=Europe/Stockholm diff --git a/swarm/matrix-synapse-stack/synapse.env b/swarm/matrix-synapse-stack/synapse.env new file mode 100644 index 0000000..8ebba0f --- /dev/null +++ b/swarm/matrix-synapse-stack/synapse.env @@ -0,0 +1,3 @@ +UID=998 +GID=991 +TZ=Europe/Stockholm