Zweiter Versuch mit NodeBB
Da mein letzter Versuch eine Kommentarfunktion und ein kleines Forum einzurichten leider kläglich gescheitert ist, mache ich mir es jetzt einfacher (oder zumindest hoffe ich das). Und statt Talkyard werde ich NodeBB verwenden. Das scheint überhaupt weiter verbreitet zu sein und unterstützt auch das Einbetten von kleinen Beitragsserie über Alternativen zu US-Techgiganten Kommentaren unter Beiträgen – auch wenn das wohl prinzipiell eher für Wordpress und Ghost ausgelegt ist. Aber noch wichtiger, es gibt ein Proxmox Community Skript dafür. Das heißt die Installation von NodeBB sollte viel einfacher sein.
Inspektion vom Skript
Es ist immer eine gute Idee sich die Skripte die man ausführt auch vorher anzusehen. In dem Fall geht das hier, und wie mir scheint, wird hier eine ganz einfache Installation über apt
vorgenommen:
msg_info "Setting up Node.js & MongoDB Repository"
mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | gpg --dearmor -o /etc/apt/keyrings/mongodb-server-8.0.gpg
echo "deb [arch=amd64,arm64 signed-by=/etc/apt/keyrings/mongodb-server-8.0.gpg] https://repo.mongodb.org/apt/ubuntu noble/mongodb-org/8.0 multiverse" >/etc/apt/sources.list.d/mongodb-org-8.0.list
$STD apt-get update
msg_ok "Set up Repositories"
msg_info "Installing Node.js"
$STD apt-get install -y nodejs
msg_ok "Installed Node.js"
msg_info "Installing MongoDB"
$STD apt-get install -y mongodb-org
systemctl enable -q --now mongod
sleep 10 # MongoDB needs some secounds to start, if not sleep it collide with following mongosh
msg_ok "Installed MongoDB"
Und dann konfiguriert:
msg_info "Configure MongoDB"
MONGO_ADMIN_USER="admin"
MONGO_ADMIN_PWD="$(openssl rand -base64 18 | cut -c1-13)"
NODEBB_USER="nodebb"
NODEBB_PWD="$(openssl rand -base64 18 | cut -c1-13)"
MONGO_CONNECTION_STRING="mongodb://${NODEBB_USER}:${NODEBB_PWD}@localhost:27017/nodebb"
NODEBB_SECRET=$(uuidgen)
{
echo "NodeBB-Credentials"
echo "Mongo Database User: $MONGO_ADMIN_USER"
echo "Mongo Database Password: $MONGO_ADMIN_PWD"
echo "NodeBB User: $NODEBB_USER"
echo "NodeBB Password: $NODEBB_PWD"
echo "NodeBB Secret: $NODEBB_SECRET"
} >>~/nodebb.creds
$STD mongosh <<EOF
use admin
db.createUser({
user: "$MONGO_ADMIN_USER",
pwd: "$MONGO_ADMIN_PWD",
roles: [{ role: "root", db: "admin" }]
})
use nodebb
db.createUser({
user: "$NODEBB_USER",
pwd: "$NODEBB_PWD",
roles: [
{ role: "readWrite", db: "nodebb" },
{ role: "clusterMonitor", db: "admin" }
]
})
Und das Gleiche noch einmal für NodeBB selbst:
msg_info "Install NodeBB"
cd /opt
RELEASE=$(curl -fsSL https://api.github.com/repos/NodeBB/NodeBB/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
curl -fsSL "https://github.com/NodeBB/NodeBB/archive/refs/tags/v${RELEASE}.zip" -o $(basename "https://github.com/NodeBB/NodeBB/archive/refs/tags/v${RELEASE}.zip")
unzip -q v${RELEASE}.zip
mv NodeBB-${RELEASE} /opt/nodebb
cd /opt/nodebb
touch pidfile
expect <<EOF >/dev/null 2>&1
log_file /dev/null
set timeout -1
Das sieht gut aus. Wichtig ist noch zu erwähnen, dass das Skript im April 2025 nur Ubuntu 24.04 unterstützt.
Dann fangen wir an.
Skript starten
Das folgende Skript in der Shell vom Proxmox Host starten:
bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/nodebb.sh)"
Im TUI (text-based user interface) geht es weiter…
… hier “Advanced” auswählen:
Und bei den nächsten Schritten mit Enter bestätigen, dann Container ID eingeben, und hostname bestätigen. 10 GB Speicher und vier Kerne und 2 GB RAM, wie vorgeschlagen passen auch. Dann statische IP-Adresse eingeben (oder DHCP, aber dann mit fixer IP-Adress-Vergabe). Den Rest kann man so belassen wie es ist und bestätigen.
Ich würde noch empfehlen den SSH-Zugang einzurichten, wo man dann den Public Key reinkopieren sollte:
Und los geht es:
Dann installiert es und nach ein paar Minuten bekommt man den Link serviert:
Und schon läuft das Forum, zumindest im lokalen LAN:
Einrichten von NodeBB
Als erstes muss man sich einmal einloggen mit den Standard-Credentials helper-scripts
(sowohl Username als auch Passwort):
Der Admin-Bereich bietet sehr viele Einstellungsmöglichkeiten:
Glücklicherweise mit Suchfunktion…
… daher können wir gleich einmal den Usernamen und Passwort ändern:
Das geht auf nach dem Klick auf den Usernamen:
Das war es auch schon vorerst mit dem Beitrag. Im nächsten Beitrag zum Thema Kommentarfunktion, nehme ich das Google’sche Sprachmodell Gemini 2.0 flash unter die Lupe und frage dort nach, wie man denn nun NodeBB Kommentarfunktionsgeber für eine statische Website verwenden kann.