Hallo Community,
ich bräuchte mal etwas Hilfe mit Docker und hoffe, dass ich hier im richtigen Bereich gelandet bin...
Ich nutze das offizielle FHEM-Image auf einem QNAP NAS - funktioniert soweit sehr gut.
Parallel habe ich eine Nextcloud laufen und würde gern deren Push-Notification-Dienst "missbrauchen", um mir Nachrichten von FHEM schicken zu lassen.
Mir ist bekannt, dass es für diesen Zweck Dienst wie Pushover, Pushbullet oder Telegram gibt aber ich würde lieber die vorhandenen Möglichkeiten nutzen, anstatt mich wieder irgendwo zu registrieren und eine weitere App auf mein Telefon zu packen.
Innerhalb der Nextcloud (also im Container) kann ich eine Notification über die Console durch Aufruf eines bestimmten php-Skriptes (OCC-Komando) triggern - funktioniert.
Ich suche eine Möglichkeit diesen Befehl aus einem anderen Container (FHEM) heraus abzusetzen. Die Contaienr befinden sich aktuell in unterschiedlichen Docker-Netzwerken.
im Thread zum Docker-image habe ich diese Frage auch schon mal kurz aufgeworfen aber es kamen dann andere Sachen dazwischen und es betrifft das Image selbst ja auch nur am Rande - daher der eigene Thread.
Ich hoffe ich konnte einigermaßen verständlich ausdrücken was ich machen möchte und wie die Voraussetzungen aussehen....
Viele Grüße,
Stephan
Jeder Docker-COntainer hat eine IP. Du könntest versuchen, darüber zu gehen. Ich weiß nur nicht, ob NextCloud per IP zum versenden von Nachrichten zu bringen ist ...
Zitat von: Wernieman am 22 August 2020, 11:28:42
Jeder Docker-COntainer hat eine IP. Du könntest versuchen, darüber zu gehen. Ich weiß nur nicht, ob NextCloud per IP zum versenden von Nachrichten zu bringen ist ...
Die Nextcloud lässt sich so konfigurieren, dass sie auch per IP erreichbar ist.
Du schlägst quasi vor, dass ich den Befehl dann über einen ssh-Tunnel rüberschicke, richtig?
Dazu müsste ich beide Container wiederum in ein Netzwerk packen, oder geht es auch in getrennten Netzen?
Falls möglich, möchte ich nicht zu viel durchmischen.
Läuft denn auf NextCloud ssh? Ich dachte nativ über Netzwerk.
Zitat von: Wernieman am 26 August 2020, 08:00:00
Läuft denn auf NextCloud ssh? Ich dachte nativ über Netzwerk.
Das müsste ich prüfen....
Ich bin jetzt nicht soooo bewandert was die tiefere Netzwerktechnik angeht. Wie würde es "nativ über Netzwerk" gehen.
"nativ über Netzwerk" meinte ich: kann man bei NextCloud genau das übers Netzwerk machen?
Ich kenne mich mit NextCloud nicht aus ...
Und bitte beachte: Docker <> VM. Eigentlich sollte in einem Docker-Container nur ein Dienst sein. Wenn Du jetzt zusätzlich noch ssh laufen lässt, hast Du 2 Dienste in einem Container ....
Hi,
könnte mir jemand behilflich sein und sagen, was ich in der Container Station in der QNAP im Wizard zum Download des FHEM Docker eintragen muss, dass es läuft?
Bekomme es nicht zum Laufen und finde keine gute Anleitung dazu. Docker ist auch recht neu für mich, sodass ich mit .yml Files bisher gar nicht zureckt komme, die im Netz zu finden sind.
Danke vorab!
@Udomatic:
Was hast du denn bisher probiert und was kommt dabei raus?
Ich finde die Oberfläche in der Container Station auch etwas unübersichtlich.
Ich bin daher dazu übergegangen die umfangreicheren Dienste in compose-files zu schreiben.
Ich starte dann alles von der Konsole aus aber man soll das compose auch in der Container Station unter application oder so reinkooppieren können. Hab ich aber selbst noch nicht gemacht.
Falls interessant, kann ich dir auch mein compose schicken bzw. Hier posten.
Unabhängig vom Threadersteller, würde ich mich einfach über Info von docker-compose.yml interessieren ...
Habe selber (seit 1 Monat) auch eine triviale hier liegen ..
Mein compose, inklusive aller weiteren Dienste, sieht so aus:
version: '2'
services:
# =============== Datenbank ===============
FHEM-DB:
image: mariadb
container_name: FHEM-DataBase
hostname: FHEM-DataBase
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
restart: always
labels:
- "com.centurylinklabs.watchtower.enable=true"
- "com.centurylinklabs.watchtower.lifecycle.post-update=/home/watchtower/watchtower.sh"
volumes:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/DataBase:/var/lib/mysql
- /etc/localtime:/etc/localtime:ro
- /share/CACHEDEV1_DATA/Docker_Daten/Basic/Watchtower:/home/watchtower
environment:
- MYSQL_ROOT_PASSWORD=Top_secret
env_file:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/DataBase/DataBase.env
networks:
fhem-net:
ipv4_address: 172.29.8.5
# =============== FHEM ===============
FHEM:
image: fhem/fhem-amd64_linux
container_name: FHEM
hostname: FHEM
restart: always
ports:
- "8083:8083"
- "8090:8090"
- "3002:3002"
labels:
- "com.centurylinklabs.watchtower.enable=true"
- "com.centurylinklabs.watchtower.lifecycle.post-update=/home/watchtower/watchtower.sh"
volumes:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/fhem:/opt/fhem
- /var/run/docker.sock:/var/run/docker.sock
- /share/CACHEDEV1_DATA/Docker_Daten/Basic/Watchtower:/home/watchtower
environment:
FHEM_UID: 1000
FHEM_GID: 1000
TIMEOUT: 10
RESTART: 1
TZ: Europe/Berlin
MYSQL_HOST: FHEM-DB
env_file:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/DataBase/DataBase.env
depends_on:
- FHEM-DB
- MQTT
networks:
fhem-net:
ipv4_address: 172.29.8.3
# =============== MQTT ===============
MQTT:
restart: always
container_name: MQTT
hostname: MQTT
ports:
- "1883:1883"
# - "9001:9001"
image: toke/mosquitto
labels:
- "com.centurylinklabs.watchtower.enable=true"
- "com.centurylinklabs.watchtower.lifecycle.post-update=/home/watchtower/watchtower.sh"
networks:
fhem-net:
ipv4_address: 172.29.8.4
volumes:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/mqtt/config:/mqtt/config/
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/mqtt/log:/mqtt/log/
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/mqtt/data:/mqtt/data/
- /share/CACHEDEV1_DATA/Docker_Daten/Basic/Watchtower:/home/watchtower
# =============== Node Red ===============
NodeRed:
image: nodered/node-red:latest
restart: always
container_name: NodeRed
hostname: NodeRed
ports:
- "9083:1880"
environment:
- TZ=Europe/Berlin
labels:
- "com.centurylinklabs.watchtower.enable=true"
networks:
fhem-net:
ipv4_address: 172.29.8.7
volumes:
- /share/CACHEDEV1_DATA/Docker_Daten/FHEM/NodeRed/data:/data/
networks:
fhem-net:
external: true
O.K. Du nimmst das Offizielle Build. Was mir persönlich zu heftig war.
Habe aktuell am laufen (Verbesserung fähig):
version: "3"
services:
fhem:
container_name: fhem
hostname: fhem.docker
build:
context: .
dockerfile: ./docker/fhem-Dockerfile
ports:
- "XXX:1883:1883" # MQTT
- "XXX.3.5:8086:8086" # ESPEasy
- "11303:11303" # CCU2 Virtual Devices
- "4012:4012" # CCU2 BidCos
- "4021:4021" # CCU2 HmIP
- "7072:7072" # Telnet
- "7073:7073" # TelnetSSL
networks:
net:
ipv4_address: 172.28.5.2
environment:
DOCKER_PROXY_VIRTUAL_HOST: 'FHEM'
DOCKER_PROXY_TEMPLATE: 'defaultNULL.template'
volumes:
- './fhem:/opt/fhem'
restart: unless-stopped
networks:
net:
ipam:
driver: default
config:
- subnet: 172.28.5.0/24
DOCKER_PROXY_.* sind variablen, um den davorliegenden nginx-Proxy automatisch konfigurieren zu können
XXX: ist die IP des WLANS der ESPs. Der Server hat einen eigenen hostapd
Habe aber auch keine health-Überwachung im Docker drin
Zitat von: balli1187 am 28 Februar 2021, 09:27:05
@Udomatic:
Was hast du denn bisher probiert und was kommt dabei raus?
Habe immer den Container Wizard der QNAP genutzt. Überraschenderweise hat es jetzt gerade funktioniert 8)
Ich weiss leider nicht mehr, was ich zuletzt für Parameter genutzt habe, weshalb es nicht ging. Habe jetzt nur
Port
TZ
Volume
definiert und das reichte jetzt.