Autor Thema: Fhem Docker Image  (Gelesen 1019 mal)

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #15 am: 14 November 2017, 08:08:32 »
Stichwort: docker-compose

Ok habe ich jetzt mal versucht aber bekomme eine Fehler meldung und kann vielleicht sagen woran es liegt?!?

version: '2'

services: fhem: expose: - "8083" - "7072" ports: - "8083:8083" - "7072:7072" image: steffen/fhem2 privileged: true

root@debian:/Docker_Test# docker-compose up
Recreating 98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_dockertest_fhem_1 ... Recreating 98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_dockertest_fhem_1 ... error

ERROR: for 98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_98f73ae03f4c_dockertest_fhem_1 No such image: sha256:ca2cbdc721a44e301c78be6ec72deead353296e47c6526848d873a9df7efd943

ERROR: for fhem No such image: sha256:ca2cbdc721a44e301c78be6ec72deead353296e47c6526848d873a9df7efd943 ERROR: Encountered errors while bringing up the project.

Offline Wernieman

  • Hero Member
  • *****
  • Beiträge: 3337
Antw:Fhem Docker Image
« Antwort #16 am: 14 November 2017, 08:31:29 »
Gib uns mal das Komplette "compose-file" ....

P.S. es gibt schon dieverse FHEM-Docker-Images bei auf dockerhub
- Bitte um Input für Output
- When there is a Shell, there is a Way

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #17 am: 14 November 2017, 09:20:39 »
Hallo!

Mehr hatte ich in der "compose-file" noch gar nicht eingegeben, dachte für ein erstes einfaches starten würde es reichen?!

Das image steffen/fhem2 hatte ich selber erstellt über eine Dockerfile und wollte diese nun über compose starten.

Kann man den über compose keine eigenen images Starten???

Mfg Steffen

Offline FunkOdyssey

  • Sr. Member
  • ****
  • Beiträge: 985
Antw:Fhem Docker Image
« Antwort #18 am: 14 November 2017, 09:22:11 »
Das YML-File ist schon wichtig.
Wenn du von "Image steffen/fhem2" sprichst, dann klingt das eher nach einem DockerHub-Image.
Ich vermute aber mal, dass du eher "build" meinst und nicht "image". Du hast doch sicherlich ein Image-Unterverzeichnis mit einem Dockerfile, oder?
FHEM@RasPi

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #19 am: 14 November 2017, 09:29:48 »
Hallo!

Nein es ist kein Docker-Hub image, hatte es selber über Dockerfile erstellt und ist unter eingabe "docker images" auch sichtbar mit id und Name "steffen/fhem2".

Im compose file, wird doch durch "build" erst das image gebaut wie ich es ja schon gemacht habe oder verstehe ich das Falsch???

Mfg Steffen

Offline FunkOdyssey

  • Sr. Member
  • ****
  • Beiträge: 985
Antw:Fhem Docker Image
« Antwort #20 am: 14 November 2017, 09:49:40 »
Sorry, zeige uns doch bitte die Dateien. Ansonsten macht das Raten hier keinen Sinn.
FHEM@RasPi

Offline Axxl

  • New Member
  • *
  • Beiträge: 6
Antw:Fhem Docker Image
« Antwort #21 am: 14 November 2017, 17:12:03 »
Ich habe schon versucht mein selbst erstelltes FhemImage über docker run -d -v /opt/fhem:/opt/fhem xxxx zu mounten und dachte das es so eine Art Spiegelung wäre aber
er stellt das Host Verzeichnis dann direkt in den DC(dockercontainer) ab, aber dann ist ja alles von dem vorher installierten Fhem weg, wie könnte
man es denn lösen das er die Daten vom DC ins Host Verzeichnis übernimmt?

Hallo Steffen,

ich bin auch letztens in ein Docker Container mit FHEM ungezogen. Stand vor dem gleichen Problem.
Ich binde das komplette opt/fhem verzeichnis. Habe eigentlich so im Betrieb keine Probeme.

Nun zu Deinem Problem mit dem initialen bind. Starte doch den Container mit einem bind auf ein temp verzeichnis.
Also z.b. : docker run -d -v /tmp/fhem:/tmp/fhem

Dann gehst du mal ins laufenden docker fhem container rein:
Bsp:
docker exec -it fhem /bin/bash

Dann kopierst Du das komplette /opt/fhem verzeichnis nach /tmp/fhem  (cp -r /opt/fhem /tmp/fhem)
Und wieder raus aus dem Container mit "exit"

Im Host dann einfach die Daten aus /tmp/fhem nach /opt/fhem kopieren
Und dann in Zukunft wieder den containter mit deinem "docker run -d -v /opt/fhem:/opt/fhem" starten.

Et Voila ..

Ok alles etwas hemdsärmelig .. aber so hab ich es halt aus Unwissen beim ersten bind gemacht.

Gruß,
Axel

Offline Wernieman

  • Hero Member
  • *****
  • Beiträge: 3337
Antw:Fhem Docker Image
« Antwort #22 am: 14 November 2017, 18:01:18 »
docker kann auch selber rauscopieren, Stichwort "docher cp"

https://docs.docker.com/engine/reference/commandline/cp/
- Bitte um Input für Output
- When there is a Shell, there is a Way

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #23 am: 14 November 2017, 20:01:28 »
Hallo!

Jetzt habe ich es, musste ein Paar Container löschen.
root@debian:/Docker_Test# docker-compose down
Stopping dockertest_fhem_1 ... done
Removing dockertest_fhem_1 ... done
Removing network dockertest_default

nun wollte ich aber noch ein Volumen hinzufügen und dann kommt der fehler:
root@debian:/Docker_Test# docker-compose up -d
ERROR: In file './docker-compose.yml', volume must be a mapping, not an array.

root@debian:/Docker_Test# cat docker-compose.yml
version: '2'

services:
   fhem:
        ports:
            - "8083:8083"
            - "7072:7072"
        image: steffen/fhem2
        privileged: true

volumes:
       - /opt/fhem/

Offline FunkOdyssey

  • Sr. Member
  • ****
  • Beiträge: 985
Antw:Fhem Docker Image
« Antwort #24 am: 14 November 2017, 20:29:21 »
Ich verstehe das mit dem „image: steffen/fhem2“ noch nicht. So musst du doch vorab manuell „builden“. Kannst du das Image bzw. das Dockerfile nicht einfach in das Unterverzeichnis legen und es in „build: fhem2“ umbenennen?
FHEM@RasPi

Offline Wernieman

  • Hero Member
  • *****
  • Beiträge: 3337
Antw:Fhem Docker Image
« Antwort #25 am: 14 November 2017, 21:02:39 »
volumes:
       - /opt/fhem/

Und da fehlt das Ziel, also z.B.:

volumes:
       - /opt/fhem/:/opt/fhem/

Hinweis:
Obige Lösung ist aus dem Kopf und da ich momentan genug Glühwein intus, ohne Gewähr!
- Bitte um Input für Output
- When there is a Shell, there is a Way

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline FunkOdyssey

  • Sr. Member
  • ****
  • Beiträge: 985
Antw:Fhem Docker Image
« Antwort #26 am: 14 November 2017, 21:45:09 »
- ./fhem/data:/opt/fhem
FHEM@RasPi

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #27 am: 15 November 2017, 07:11:28 »
Guten Morgen!

Also irgendwie stehe ich auf dem schlauch, wenn ich mit dieser Config starte ist Fhem nicht erreichbar:
version: '2'
services:
  fhem:
    image: steffen/fhem3
    ports:
     - "8083:8083"
    volumes:
     - /fhem/data:/opt/fhem

damit schon:
version: '2'
services:
  fhem:
    image: steffen/fhem3
    ports:
     - "8083:8083"
    #volumes:
     #- /fhem/data:/opt/fhem

mein Host Ordner sieht so aus:
root@debian:/Docker_Test# ls -l /fhem/data
insgesamt 284
-rw-r--r--  1 root root  39189 Nov 15 07:02 configDB.pm
drwxr-xr-x 40 root root   4096 Nov 15 07:02 contrib
drwxr-xr-x  3 root root   4096 Nov 15 07:02 demolog
drwxr-xr-x  4 root root   4096 Nov 15 07:02 docs
drwxr-xr-x  8 root root   4096 Nov 15 06:52 fhem
drwxr-xr-x  6 root root  20480 Nov 15 07:02 FHEM
-rw-r--r--  1 root root    744 Nov 15 07:02 fhem.cfg
-rw-r--r--  1 root root  15740 Nov 15 07:02 fhem.cfg.demo
-rwxr-xr-x  1 root root 141228 Nov 15 07:02 fhem.pl
drwxr-xr-x  2 root root   4096 Nov 15 07:02 log
-rw-r--r--  1 root root  35751 Nov 15 07:02 MAINTAINER.txt
-rw-r--r--  1 root root    935 Nov 15 07:02 README_DEMO.txt
drwxr-xr-x  8 root root   4096 Nov 15 07:02 www

habe ich da einen Denkfehler, das /fhem/data doch gemountet wird und Fhem auf Docker seite drauf zugreifen können müsste???

Mfg Steffen

Offline Wernieman

  • Hero Member
  • *****
  • Beiträge: 3337
Antw:Fhem Docker Image
« Antwort #28 am: 15 November 2017, 08:02:20 »
Denk bitte mal nach:
Du sagst /fhem/data ... wo denkt wohl der Deamon, liegt dieses? Bestimmt nicht in Deinem "Home-Ordner"
« Letzte Änderung: 15 November 2017, 20:22:12 von Wernieman »
- Bitte um Input für Output
- When there is a Shell, there is a Way

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Offline Steffen

  • Sr. Member
  • ****
  • Beiträge: 555
Antw:Fhem Docker Image
« Antwort #29 am: 15 November 2017, 20:00:26 »
Hallo,

so recht verstehe ich nicht was du meinst, laut docker ist doch "HOST:CONTAINER" aber habe viel versucht doch irgendwie finde ich den Fehler nicht?!

Kann das an der Pfad angabe liegen, habe es auch mit ./ versucht?!

Mfg Steffen