# VMs und Container
# VM 100 - Home Assistant
## Technische details
CPU
4
RAM
2G
HDD
10G
OS
Ubuntu 22.04
IP
192.168.0.250/24
Domain
hass.oberlab.de
Ports
8123
## Dienste
Auf dem Container läuft [Home Assistant](https://www.home-assistant.io/), eine Home Automation Software, in einem Docker-Container
Nach Außen ist der Port 8123 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
# Neue Seite
# Container 102 - Caddy
## Technische details
CPU
4
RAM
2G
HDD
4G
OS
Ubuntu 22.04
IP
192.168.0.253/24
Domain
-
Ports
80, 443
## Dienste
Auf dem Container läuft [Caddy](https://caddyserver.com/v2), ein Web Reverse-Proxy. Er schirmt die internen Dienste ab, und bietet eine allgemeine Schnittstelle für die Ports 80/443 (HTTP/HTTPS).
Die Ports 80/443 vom Internetanschluss werden von der Kabelbox an Caddy weitergeleitet, somit kümmert sich Caddy um alle einkommenden Web-Anfragen und leitet sie entsprechend weiter.
Eine weitere Aufgabe von Caddy ist die [automatische](https://caddyserver.com/docs/automatic-https) Beantragung und Erneuerung (alle 3 Monate) von SSL Zertifikaten über den freien Dienst Let's Encrypt.
# Container 103 - Vaultwarden
## Technische details
CPU
1
RAM
1G
HDD
4G
OS
Ubuntu 22.04
IP
192.168.168.35/24
Domain
[pw.oberlab.de](https://pw.oberlab.de/)
Ports
80
## Dienste
Auf dem Container läuft [Vaultwarden](https://github.com/dani-garcia/vaultwarden), eine freie Implementierung und resourcenschonende Variante von [Bitwarden](https://bitwarden.com/) als Docker-Container. Vaultwarden implementiert dabei die API eines Bitwarden-Servers und ist damit mit allen [Bitwarden Clients](https://bitwarden.com/download/) kompatibel
Nach Außen ist der Port 80 erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/intern/obermox/container_102), der die Umsetzung nach HTTPS vornimmt.
Vaultwarden benötigt zwingend eine HTTPS Verbindung, ansonsten kommt nur eine Seite mit einer Fehlermeldung ("Please access this site over HTTPS")
# VM 104 - MQTT
## Technische details
CPU
2
RAM
1G
HDD
8G
OS
Debian 11.3
IP
192.168.0.251/24
Domain
.
Ports
1883, 8883
## Dienste
Auf dem Container läuft [Eclipse Mosquitto](https://mosquitto.org/), ein open-source MQTT Server, in einem Docker-Container
Nach Außen sind die Ports 1883 (unverschlüsselt) und 8883 (TLS-Verschlüsselt) offen
Der Zugang zum MQTT Server ist nur mittels Login/Passwort möglich, anonyme Verbindung sind nicht möglich. Dies gilt sowohl für Devices, die Daten senden wollen, als auch für Dienste, die Daten abonnieren wollen.
## MQTT User anlegen
`docker-compose exec mosquitto mosquitto_passwd -b /mosquitto/config/mosquitto.passwd username`
## MQTT mitlesen
`docker-compose exec mosquitto mosquitto_sub -u username -P passwort -t "#"`
## MQTT Topics
Um einen beliebigen Wildwuchs and MQTT Topics zu verhindern sollten hier alle Topics aufgelistet und neue entsprechend des Schemas angelegt werden.
Kategorie
Topic
Beschreibung
Kontaktperson
Projekte
projects/connecting\_peaks/<device>/+
Connecting Peaks
Joel
projects/trackhoki/<device>/+
Track Hoki
Joel
Lab
gmund/hass/heizung/<device>/+
Home Automation im Gmunder Lab
Joel/John
# VM 105 - Kimai
## Technische details
CPU
4
RAM
2/4G
HDD
8G
OS
Debian 11.3
IP
192.168.168.8/24
Domain
personal.oberlab.de
Ports
1883, 8883
## Dienste
Auf dem Container läuft [Kimai](https://www.kimai.org), eine Zeiterfassungssoftware, in einem Docker-Container
# VM 106 - Minecraft
## Technische details
CPU
6
RAM
4/8G
HDD
12G /
8G /home
OS
Ubuntu 22.04 Server
IP
192.168.0.249/24
Domain
minecraft.oberlab.de
oberlab.chickenkiller
Ports
8000, 9000, 9443, 25565
## Dienste
Auf der VM läuft ein Minecraft von Julian/Konsti. Administriert wird der Container mittels [Portainer](https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux).
Nach Außen sind die Ports 8000, 9000, 9443 von Portainer erreichbar.
Minecraft verwendet den Port 25565.
# Container 107 - Listmonk
## Technische details
## Dienste
Auf dem Container läuft [ListMonk](https://listmonk.app/), eine freie Mailinglisten Verwaltungssoftware als Docker-Container.
Nach Außen ist der Port 9000 erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
# Container 108 - ptrackhoki
### Technische details
CPU
4
RAM
2G
HDD
8G
OS
Ubuntu 22.04
IP
192.168.168.4/24
Domain
trackhoki.oberlab.de
Ports
3000, 8086
## Dienste
Auf dem Container laufen Telegraf, Influxdb und Grafana
Nach Außen ist der Port 3000 von Grafana erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
Der Port 8086 von Influxdb ist verfügbar um auf die Datenbank z.B. per Skript zuzugreifen, wir aber für den Betrieb von Grafana nicht verwendet (Grafana benutzt das interne Docker-Netzwerk)
## Dienste
Auf dem Container laufen Telegraf, Influxdb und Grafana
Nach Außen ist der Port 3000 von Grafana erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
Der Port 8086 von Influxdb ist verfügbar um auf die Datenbank z.B. per Skript zuzugreifen, wir aber für den Betrieb von Grafana nicht verwendet (Grafana benutzt das interne Docker-Netzwerk)
## Setup
### Grafana
in grafana.ini, den domain-Eintrag anpassen und Container neu starten
### Influxdb
Passwörter für admin, grafana und telegraf ändern
### Telegraf
Format der MQTT Pakete anpassen
Passwörter für MQTT & InfluxDB anpassen
# Container 11 - bikesensor & messi
## Technische details
## Dienste
### [Bikesensor](https://wiki.oberlab.de/books/verschiedene-projekte/page/openbikesensor "OpenBikeSensor") Projekt
Der Webserver für das OpenBikeSensor Projekt läuft auf Port 8000, wird über ein Systemd-Service gestartet
Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
### [Messi](https://wiki.oberlab.de/books/verschiedene-projekte/page/messis-im-oberland "Messis im Oberland") Projekt
Auf dem Container laufen Influxdb und Grafana sowie ein [cherrypy](https://cherrypy.dev/) Webserver
Nach Außen ist der Port 3000 von Grafana erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
Der Port 8086 von Influxdb ist verfügbar um auf die Datenbank z.B. per Skript zuzugreifen, wir aber für den Betrieb von Grafana nicht verwendet (Grafana benutzt das interne Docker-Netzwerk)
Der Port 80 wird von cherrypy verwendet, um die Nachrichten von [TTN](https://wiki.oberlab.de/books/allgemeines-wissen/page/lora-ttn "LoRa & TTN") per WebPush zu empfangen
Die passende Software liegt unter [https://gitlab.com/oberlab/p\_messi.git](https://gitlab.com/oberlab/p_messi.git)
# VM 112 - Proxmox Backup Server
## Technische details
CPU
4
RAM
4/8G
HDD
12G + 200G
OS
Debian ?
IP
192.168.0.248/24
Domain
(pbs.oberlab.de)
Ports
8007
## Dienste
Auf dem Container läuft [proxmox backup server](https://www.proxmox.com/de/proxmox-backup-server). Dessen Web-Oberfläche ist über den Port 8007 erreichbar
Nach Außen ist der Port 3000 von Grafana erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
## Zweite Platte
Die zweite Platte beinhaltet die Backups. Sie ist unter /mnt/datastore/oberlab gemountet
# VM 117 - Oberlogin
## Technische details
CPU
4
RAM
2G
HDD
8G
OS
Debian 11
IP
192.168.0.247/24
Domain
oberlogin.oberlab.de
Ports
8080
## Dienste
Auf dem Container läuft [Keycloak](https://www.keycloak.org/), eine User Management Software, die für das SSO zuständig ist.
Nach Außen ist der Port 8080 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
# VM 118 - Obercloud
## Technische details
CPU
8
RAM
8G
HDD
16G+100G
OS
Debian 11
IP
192.168.168.10/24
Domain
files.oberlab.de
docs.oberlab.de
Ports
80
9980
## Dienste
Auf dem Container läuft [Nextcloud](https://nextcloud.com/), eine Cloud Software. Passend dazu ebenfalls [Collabora Office](https://www.collaboraoffice.com/) um
Nach Außen sind die Ports 80 und 9980 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/books/server-gmund/page/container-102-caddy "Container 102 - Caddy"), der die Umsetzung nach HTTPS vornimmt.
# VM 119 - old Wiki
## Technische details
CPU
4
RAM
2/3G
HDD
8G+8G
OS
Debian 11
IP
192.168.168.11/24
Domain
wikiold.oberlab.de
Ports
3000
## Dienste
Auf dem Container läuft [Wiki.js](https://js.wiki/), eine Wiki Software.
Nach Außen ist der Port 3000 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/intern/obermox/container_102), der die Umsetzung nach HTTPS vornimmt.
# VM 120 - Wiki
## Technische details
CPU
4
RAM
4/4G
HDD
8G
OS
Debian 12
IP
192.168.168.13/24
Domain
wiki.oberlab.de
Ports
80
## Dienste
Auf dem Container läuft [BookStack](https://www.bookstackapp.com/), eine Wiki Software.
Nach Außen ist der Port 80 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/intern/obermox/container_102), der die Umsetzung nach HTTPS vornimmt.
# VM 121 - Paperless
## Technische details
CPU
8
RAM
3/6G
HDD
16G+8G
OS
Debian 12
IP
192.168.0.9/24
192.168.168.14/24
Domain
paperless.oberlab.de
Ports
80
## Dienste
Auf dem Container läuft [Paperless-ngx](https://docs.paperless-ngx.com/), ein Dokument Mangement System.
Ferner läuft ein Samba-Server auf Ports 139/445, womit ein Upload von Dokumenten (zB direkt aus dem Scanner/Drucker im Lab) möglich ist.
Nach Außen ist der Port 80 der Standard-Weboberfläche erreichbar. Angesteuert wird der Port vom [Caddy Container](https://wiki.oberlab.de/intern/obermox/container_102), der die Umsetzung nach HTTPS vornimmt.