531 739 läst ·
6 166 svar
532k läst
6,2k svar
Home Assistant
Proxmox är Debian med ZFS stöd fast med sämre stöd för Docker (LXC är väl det som stöds).F Fideliox skrev:
Om du kör typ Ubuntu server med ZFS som filsystem och Docker har du typ samma sorts system. Fler projekt har Docker containers och det borde alltså vara enklare att följa instruktioner för att få saker att köra på Docker.
Diversearbetare
· Göteborg
· 11 181 inlägg
Man kör Docker i en LXC.S sjoelund skrev:Proxmox är Debian med ZFS stöd fast med sämre stöd för Docker (LXC är väl det som stöds).
Om du kör typ Ubuntu server med ZFS som filsystem och Docker har du typ samma sorts system. Fler projekt har Docker containers och det borde alltså vara enklare att följa instruktioner för att få saker att köra på Docker.
- LXC är ett system i en container och en god ersättare för ett VM med samma eller liknande OS. Man kan härja fritt inom varje LXC som om det vore ett VM.
- Docker är en app med tillbehör i en container. Snabbt och lätt att sätta upp…om allt klaffar.
Jag har själv helt lämnat Docker för LXC för olika privata tjänster eftersom det senare ”bara fungerade”.
Boilerplate4U
Medlem
· CEO Tomteverkstan Nordpolen
· 2 414 inlägg
Boilerplate4U
Medlem
- CEO Tomteverkstan Nordpolen
- 2 414 inlägg
Eftersom Proxmox bygger på en specialanpassad Debian fungerar plattformen både som virtuell maskin (KVM) och container-motor (LXC).S sjoelund skrev:
Windows och BSD måste köras som virtuella maskiner men i övrigt går de flesta Linux-baserade containers att köra direkt på Proxmox. Undantag är vissa specialtillämpningar som kräver direkt tillgång till drivrutiner tex SR-IOV och PCI-passthrough eller om containern behöver komma åt kernelfunktioner med root-privilegier. Man kan visserligen köra en kontainer i privileged mode men det innebär vissa säkerhetsrisker.
Redigerat:
Boilerplate4U
Medlem
· CEO Tomteverkstan Nordpolen
· 2 414 inlägg
Boilerplate4U
Medlem
- CEO Tomteverkstan Nordpolen
- 2 414 inlägg
Glömde nämna att man kan köra Docker i en privileged LXC-container men för att komma åt alla funktioner är det bäst att köra Docker-miljön som virtuell maskin med tex Alpine Linux eller likande.Boilerplate4U skrev:
Eftersom Proxmox bygger på en specialanpassad Debian fungerar plattformen både som virtuell maskin (KVM) och container-motor (LXC).
Windows och BSD måste köras som virtuella maskiner men i övrigt går de flesta Linux-baserade containers att köra direkt på Proxmox. Undantag är vissa specialtillämpningar som kräver direkt tillgång till drivrutiner tex SR-IOV och PCI-passthrough eller om containern behöver komma åt kernelfunktioner med root-privilegier. Man kan visserligen köra en kontainer i privileged mode men det innebär vissa säkerhetsrisker.
Boilerplate4U
Medlem
· CEO Tomteverkstan Nordpolen
· 2 414 inlägg
Boilerplate4U
Medlem
- CEO Tomteverkstan Nordpolen
- 2 414 inlägg
Fördelen med till exempel Windows Hyper-V eller Proxmox är att det blir väldigt enkelt att flytta virtuella maskiner om du någon gång ska gå över till produktion. Dessutom blir det smidigt att hantera resurser som CPU och RAM samt backup blir också enklare. Det är helt klart värt att lägga lite extra tid på i början.nino skrev:
Lycka till med projektet!
Diversearbetare
· Göteborg
· 11 181 inlägg
Diversearbetare
· Göteborg
· 11 181 inlägg
I och med att en LXC är en systemcontainer är det ju inga problem att installera en appcontainer som Docker. Docker-installationen är ju inte ens medveten om att den är i en LXC, lika lite som att den rullsr i ett VM. Funkar med Podman i LXC också. Sedan är väl det mesta inte ”officiellt” stött i Proxmox egentligen. Du kan ju göra lite vad som helst och det är ju meningen.S sjoelund skrev:
Diversearbetare
· Göteborg
· 11 181 inlägg
Fråga om Unifi Network Application-tillägget och Unifi-integrationen.
Dessa fungerar ju utmärkt var och en för sig, men är det någon som vet om de båda två kan köras i samma Raspberry Pi5? Jag skall hjälpa en kompis med lite HA-installation och även flytta Network Application från en gammal Mac till RPi/HA. Unifi-integration är ju himla smidig så den bör ju installeras samtidigt. Kan den då kontakta Network Application på samma värd? Någon som testat?
Dessa fungerar ju utmärkt var och en för sig, men är det någon som vet om de båda två kan köras i samma Raspberry Pi5? Jag skall hjälpa en kompis med lite HA-installation och även flytta Network Application från en gammal Mac till RPi/HA. Unifi-integration är ju himla smidig så den bör ju installeras samtidigt. Kan den då kontakta Network Application på samma värd? Någon som testat?
Diversearbetare
· Göteborg
· 11 181 inlägg
Så du har en container för HA med tillbehör och en för Unifi Network Application? Har dessa olika IP-adresser eller hur du öppnat mot Docker-värden med olika portar på samma IP (localhost?)
Det är port forwarding och fler containers än bara UniFi network (även mongo db för att köra UniFi; sedan 2 instanser av Zigbee2MQTT då vissa enheter inte gillar nyare controllers och tvärt om). Detta är mina docker compose:Johan Gunverth skrev:
Kod:
version: '3.7'
services:
unifi-db:
image: docker.io/mongo:latest
container_name: unifi-db
volumes:
- /data/mongodb:/data/db
- ./init-mongo.js:/docker-entrypoint-initdb.d/init-mongo.js:ro
restart: unless-stopped
unifi-network-application:
image: lscr.io/linuxserver/unifi-network-application:latest
container_name: unifi-network-application
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- MONGO_USER=unifi
- MONGO_PASS=**********************
- MONGO_HOST=unifi-db
- MONGO_PORT=27017
- MONGO_DBNAME=unifi
- MEM_LIMIT=1024 #optional
- MEM_STARTUP=1024 #optional
- MONGO_TLS= #optional
- MONGO_AUTHSOURCE= #optional
volumes:
- /data/unifi-network-application:/config
ports:
- 8443:8443
- 3478:3478/udp
- 10001:10001/udp
- 8080:8080
#- 1900:1900/udp #optional
- 8843:8843 #optional
- 8880:8880 #optional
- 6789:6789 #optional
- 5514:5514/udp #optional
restart: unless-stopped
Kod:
version: '3'
services:
homeassistant:
container_name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
volumes:
- /data/home-assistant:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
privileged: true
network_mode: host
depends_on:
- mosquitto
- matter-server
mosquitto:
container_name: mosquitto
image: eclipse-mosquitto
restart: unless-stopped
ports:
- "1883:1883/tcp"
environment:
- TZ=Europe/Brussels
volumes:
- /data/mosquitto/config:/mosquitto/config
- /data/mosquitto/data:/mosquitto/data
- /data/mosquitto/log:/mosquitto/log
stdin_open: true
tty: true
mosquittogp:
container_name: mosquittogp
image: eclipse-mosquitto
restart: unless-stopped
ports:
- "1884:1884/tcp"
environment:
- TZ=Europe/Brussels
volumes:
- /data/mosquittogp/config:/mosquitto/config
- /data/mosquittogp/data:/mosquitto/data
- /data/mosquittogp/log:/mosquitto/log
stdin_open: true
tty: true
zigbee2mqtt:
container_name: zigbee2mqtt
image: koenkk/zigbee2mqtt
restart: unless-stopped
volumes:
- /data/zigbee2mqtt:/app/data
- /run/udev:/run/udev:ro
ports:
# Frontend port
- 8099:8099
environment:
- TZ=Europe/Berlin
devices:
- "/dev/serial/by-id/usb-ITEAD_SONOFF_Zigbee_3.0_USB_Dongle_Plus_V2_****-if00:/dev/ttyACM0"
depends_on:
- mosquitto
zigbee2mqttgp:
container_name: zigbee2mqttgp
image: koenkk/zigbee2mqtt
restart: unless-stopped
volumes:
- /data/zigbee2mqttgp:/app/data
- /run/udev:/run/udev:ro
ports:
# Frontend port
- 8100:8100
environment:
- TZ=Europe/Berlin
devices:
- "/dev/serial/by-id/usb-ITead_Sonoff_Zigbee_3.0_USB_Dongle_Plus_****-if00-port0:/dev/ttyACM0"
depends_on:
- mosquittogp
# python-matter-server
matter-server:
image: ghcr.io/home-assistant-libs/python-matter-server:stable
container_name: matter-server
restart: unless-stopped
# Required for mDNS to work correctly
network_mode: host
security_opt:
# Needed for Bluetooth via dbus
- apparmor:unconfined
volumes:
# Create an .env file that sets the USERDIR environment variable.
- /data/matter-server:/data/
# Required for Bluetooth via D-Bus
#- /run/dbus:/run/dbus:ro
# If you adjust command line, make sure to pass the default CMD arguments too:
#command: --storage-path /data --paa-root-cert-dir /data/credentials --bluetooth-adapter 0
Du får hålla ordning på portarna. Då och då så krockar ju t.ex 8080 så får man flytta en tjänst till 8081 istället etc. Det görs via Docker i e. -p 8080:8081Johan Gunverth skrev: