IOTstack – další dockerizované služby

Říkáte si, že se Vám líbí myšlenka IOTstack, společně s jeho zálohováním a přemýšlíte, že by se hodily i další služby, které by v něm bylo praktické mít? Vždyť se to přímo vysloveně nabízí! A společně si ukážeme, že to není až takový problém.

Návod níže zohledňuje následující programy, které si můžete přidat:

  • Octoprint
  • UniFi Controller
  • Oscam
  • PLCComS
  • Homer

Pro zakomponování programů nejprve zeditujeme soubor docker-compose.yml:

sudo nano ~/IOTstack/docker-compose.yml

Následně na jeho konec stačí dodat následující kódy, které si vybereme dle požadovaného programu.


Octoprint

Jedná se o oblíbený plugin pro ovládání 3D tiskárny.

octoprint:
    image: octoprint/octoprint
    restart: unless-stopped
    ports:
      # presmerovani portu: misto 9998 muzete vyuzit jakykoliv volny, ktery mate
      - 9998:80 
    volumes:
      - ./volumes/octoprint:/octoprint
    devices:
      #zde si nastavte takove ACM, ktere nemate pouzit - jedna se pristup k USB
      - /dev/ttyACM1 
      # pokud pouzivate kameru, tak odkomentuje nasledujici radek
      #  - /dev/video0:/dev/video0

UniFi Controller

Pro kontrolu Vaší unifikované sítě určitě rádi využijete UniFi Controller.

unifi:
    image: ryansch/unifi-rpi:latest
    container_name: unifi
    restart: always
    network_mode: host
    # Uncomment the following to set java options
    # environment:
    #   JAVA_OPTS: -Xmx512M
    volumes:
      # Unifi v5.0.7 creates all of these directories (some remain empty)
      - ./volumes/unifi/config:/var/lib/unifi
      - ./volumes/unifi/log:/usr/lib/unifi/logs
      - ./volumes/unifi/log2:/var/log/unifi
      - ./volumes/unifi/run:/usr/lib/unifi/run
      - ./volumes/unifi/run2:/run/unifi
      - ./volumes/unifi/work:/usr/lib/unifi/work

Upozornění: je potřeba si hlídat přiřazené porty různým službám, protože následně může dojít k jejich vzájemné kolizi. Jedná se o jeden ze základních problémů, kdy například právě Unifi Controller se může hádat s Homebridge!

V tomto případě se bude bít Unifi Controller s Homebridge. Pro opravu je potřeba Homebridge přesunout na jiný port. K tomu nám bude sloužit úprava prostředí a nový build.

nano ~/IOTstack/services/homebridge/homebridge.env 

Zobrazí se Vám obsah souboru homebridge.env a je potřeba přepsat port z 8080 na jiný, volný:

PGID=1000
PUID=1000
HOMEBRIDGE_CONFIG_UI=1
HOMEBRIDGE_CONFIG_UI_PORT=8581

Poté CTRL+X pro uzavření, Y pro uložení a ENTER.


Oscam

Program známý především v satelitní komunitě, sloužící zejména pro správu přístupů ke kartě. Pokud nevíte, k čemu byste jej potřebovali, tak jej nejspíše nepotřebujete.

  oscam:
    container_name: oscam
    image: ghcr.io/linuxserver/oscam
    restart: unless-stopped
    ports:
      - "8888:8888"
      - "7577:7577"
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Prague
    volumes:
      - ./volumes/oscam/config:/config

PLCComS

Jedná se o komunikační server pro chytré jednotky Foxtrot od společnosti TECO. Slouží ke komunikaci jednotky například s Node-RED.

  plccoms:
    container_name: plccoms
    image: rosiste/plccoms:latest
    restart: unless-stopped
    ports:
      - "5010:5010"
    environment:
      - TZ=Europe/Prague
    volumes:
      - ./volumes/plccoms/log:/var/log/teco
      - ./volumes/plccoms/etc:/etc/teco

Homer

Jedná se o velmi užitečnou věc, která na portu 8881 zobrazí webovou stránku, kterou si můžete plně definovat. Například si tam můžete dát odkazy na všechny služby a porty, které používáte a máte tak vše na jednom místě. Více v dokumentaci k Homeru.

  homer:
    image: b4bz/homer:latest
    container_name: homer
    environment:
      - UID=1000
      - GID=1000
    volumes:
      - ./volumes/homer/assets:/www/assets
    ports:
      - "8881:8080"

Po dokončení editace soubor uložte a proveďte následující příkaz:

cd ~/IOTstack/
docker-compose up -d

A za pár okamžiků budete mít na daných portech spuštěné ty služby, které jste využili.

$ s myšlenky na „$ s“
  1. Ahoj,
    po pár pokusech se mi podařilo rozjet Plex jako další službu. Klidně bych nasdílel podněty jak to zprovoznit a jak nasměrovat knihovnu tak aby byla na externí disku. Osobně jsem s tím docela bojoval a věřím, že to mnohé odradí. Dá se někde nasdílet např na discordu? A jinak super články. Díky moc hrozně mi pomohly v začátku na rozkoukání.

    Díky
    Lukáš

    1. Ahoj,
      pokud to máš sepsané nebo sepíšeš, tak klidně mi napiš na Discordu (Vaskojiri) a klidně to doplníme.

Napsat komentář: Lukáš Zrušit odpověď na komentář