Proxmox - Entwicklungsumgebung für den ioBroker

Mit ** gekennzeichnete Links auf dieser Seite sind Affiliatelinks.

Proxmox - Entwicklungsumgebung für den ioBroker
Proxmox - Entwicklungsumgebung für den ioBroker
  • Matthias Kleine
  • 09.11.2023
  • Proxmox
  • ioBroker

Da ich mein ioBroker-Entwicklungssystem mal auf den aktuellsten Stand bringen wollte (Debian 12, NodeJS 20, …), nehme ich Dich einfach mal mit. Ich nutze für die Entwicklung aller Adapter schon länger einen eigenen LXC-Container unter Proxmox. Somit kann ich von all meinen Systemen im Haus mit VSCode darauf zugreifen und an den Projekten nahtlos weiter arbeiten. Wie genau ich das System aufsetze, zeige ich Dir in diesem kurzen Video.

Natürlich kann ich nicht alles erklären. Etwas Wissen über GitHub, die Adpater-Entwicklung unter ioBroker, Linux/Debian und VSCode setze ich mal voraus. Erst letztes Jahr habe ich Anleitung für die ioBroker-Adapter-Entwicklung aktualisiert. Schau dort gerne für die Grundlagen vorbei! Das meiste davon ist heute noch Stand der Dinge.

Video

ioBroker-Kurs

Befehle

Wichtig: Den root-Benutzer nutze ich nur während der Einrichtung des Adapters. Bitte nie dauerhaft als root arbeiten. Bei einer Debian VM würde ich für root nichtmal ein Passwort vergeben, sodass der Nutzer gar nicht verwendet werden kann!

Als root ausführen:

apt update
apt upgrade

apt install -y curl net-tools
dpkg-reconfigure tzdata
dpkg-reconfigure locales
apt install -y console-data

adduser mkleine
apt install -y sudo
usermod -aG sudo mkleine
exit
Info: Ich verwende für die Adapter-Entwicklung (ab jetzt) NodeJS 20.x. Mittlerweile kann man die Scripts für die automatische Einrichtung ja nicht mehr verwenden, weswegen hier der manuelle Weg gezeigt wird. Das würde normalerweise der ioBroker-Installer für uns erledigen, aber dieser wird hier ja nicht ausgeführt!

Als der neu angelegte User (mkleine) ausführen:

sudo apt install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
sudo apt update
sudo apt install -y nodejs

mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
nano ~/.profile

Folgendes ergänzen:

# set npm-global
if [ -d "$HOME/.npm-global/bin" ] ; then
    PATH="$HOME/.npm-global/bin:$PATH"
fi
source ~/.profile

npm install --global @iobroker/dev-server
sudo apt install -y git

git config --global user.name "Max Master"
git config --global user.email "max.master@web.de"

Beispiel-Projekt auschecken:

git clone git@github.com:klein0r/ioBroker.trashschedule.git
cd ioBroker.trashschedule/
dev-server setup
dev-server watch

Hilfreiche Einstellungen und Tools

npm install -g npm-check-updates
ncu -i
Du willst mehr?

Smart-Home-Trainings von A-Z

Steig noch tiefer in die Themen ein und meistere Deine Projekte! Über 13.000 Teilnehmer konnten sich schon von der Qualität der Online-Kurse überzeugen.

ioBroker-Master-Kurs

ioBroker-Master-Kurs

Mehr Infos
Hausbau-Kurs

Hausbau mit KNX

Mehr Infos
Lox-Kurs

Lox-Kurs

Mehr Infos
Node-RED-Master-Kurs

Node-RED-Master-Kurs

Mehr Infos