Files
org-roam/20230607135405-rocket_chat.org
2025-11-05 09:18:11 +01:00

73 lines
3.2 KiB
Org Mode

:PROPERTIES:
:ID: 29c8ec85-9de8-4ace-8c52-13a086341861
:END:
#+title: rocket-chat
#+filetags: :communication:
Main text communication programm. Runs as a [[id:df046fd7-1f82-4e12-9065-56d222f56408][docker]] container on the communication [[id:f2b1d5af-1a7d-47a5-95c8-4a85d558419e][server]] ([[id:80a4104e-af18-4d90-a45e-2c92b51e8c0c][server-w10]]). There exists no [[id:fcbfabfa-4a8c-4826-8b57-5dce05965c76][docker-compose]] file for the startup because the rocket-chat container in combination with the [[id:91deae5f-e670-4463-8fee-688212d13030][mongo-db]] is startted as a *stack* inside the [[id:4afb1f41-983a-4b54-9828-a1e3788eb28b][portainer]] [[id:a08570b0-8fe8-45a8-8f60-e45ea6b31a34][GUI]]. The Rocketchat Gui is hosted via the [[id:90e3b8a2-b523-4044-af6f-fd4a559b2d7f][traefik_docker]].
* docker compose file
#+begin_src bash
services:
rocketchat:
image: registry.rocket.chat/rocketchat/rocket.chat:${RELEASE:-latest}
restart: on-failure
labels:
- "traefik.enable=true"
- "traefik.http.routers.rocketchat.entrypoints=websecure"
- "traefik.http.routers.rocketchat.rule=Host(`chat.green-chem.net`)"
- "traefik.http.routers.rocketchat.tls=true"
- "traefik.http.routers.rocketchat.tls.certresolver=production"
- "traefik.http.routers.rocketchat.service=rocketchat"
- "traefik.http.services.rocketchat.loadbalancer.server.port=3000"
- "traefik.docker.network=traefik_relay"
#- "traefik.http.routers.rocketchat.middlewares=default@file"
environment:
MONGO_URL: "${MONGO_URL:-\
mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
${MONGODB_DATABASE:-rocketchat}?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
MONGO_OPLOG_URL: "${MONGO_OPLOG_URL:\
-mongodb://${MONGODB_ADVERTISED_HOSTNAME:-mongodb}:${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}/\
local?replicaSet=${MONGODB_REPLICA_SET_NAME:-rs0}}"
ROOT_URL: ${ROOT_URL:-http://localhost:${HOST_PORT:-3000}}
PORT: ${PORT:-3000}
DEPLOY_METHOD: docker
#DEPLOY_PLATFORM: ${DEPLOY_PLATFORM}
depends_on:
- mongodb
networks:
- chat_relay
- traefik_relay
mongodb:
image: docker.io/bitnami/mongodb:${MONGODB_VERSION:-latest}
restart: on-failure
volumes:
- mongodb_data:/bitnami/mongodb
environment:
MONGODB_REPLICA_SET_MODE: primary
MONGODB_REPLICA_SET_NAME: ${MONGODB_REPLICA_SET_NAME:-rs0}
MONGODB_PORT_NUMBER: ${MONGODB_PORT_NUMBER:-27017}
MONGODB_INITIAL_PRIMARY_HOST: ${MONGODB_INITIAL_PRIMARY_HOST:-mongodb}
MONGODB_INITIAL_PRIMARY_PORT_NUMBER: ${MONGODB_INITIAL_PRIMARY_PORT_NUMBER:-27017}
MONGODB_ADVERTISED_HOSTNAME: ${MONGODB_ADVERTISED_HOSTNAME:-mongodb}
MONGODB_ENABLE_JOURNAL: ${MONGODB_ENABLE_JOURNAL:-true}
ALLOW_EMPTY_PASSWORD: ${ALLOW_EMPTY_PASSWORD:-yes}
networks:
- chat_relay
volumes:
mongodb_data:
networks:
traefik_relay:
external: true
chat_relay:
internal: true
#+end_src
* Networks
The internal network ~chat_relay~ will be created automatically but the external network ~traefik_relay~ has to be created beforhand when the traefik reverse proxy is created.