lima-city: Webhosting, Domains und Cloud
1 Pluspunkt 0 Minuspunkte

Wie erstelle ich einen Container mit der Proxmox API? Ich habe dieses Script gefunden aber verstehe einfach nicht wie das funktioniert. Kann mir jemand ein Script zeigen wie ich das machen kann?

curl -sk -X POST https://10.0.0.23:8006/api2/json/nodes/pve/lxc \
  -d vmid=101 \
  -d hostname=test-container \
  -d ostemplate=local:vztmpl/ubuntu-22.04.tar.zst \
  -d memory=512 \
  -d cores=1 \
  -d rootfs="local-lvm:8" \
  -d unprivileged=1)
von  

1 Antwort

0 Pluspunkte 0 Minuspunkte

Zuerst brauchst du ein Cookie und einen CSRF-Token. Beides generierst du über die API. So generierst du das Cookie:

curl --silent --insecure --data "username=root@pam&password=yourpassword" \
 https://10.0.0.23:8006/api2/json/access/ticket\
| jq --raw-output '.data.ticket' | sed 's/^/PVEAuthCookie=/' > cookie

Und so generierst du den CSRF Token:

curl --silent --insecure --data "username=root@pam&password=yourpassword" \
 https://10.0.0.23:8006/api2/json/access/ticket \
| jq --raw-output '.data.CSRFPreventionToken' | sed 's/^/CSRFPreventionToken:/' > csrftoken

Um zu prüfen ob die Authentifizierung klappt kannst du diesen Statusbefehl aufrufen

curl  --insecure --cookie "$(<cookie)" https://10.0.0.23:8006/api2/json/nodes/pve/status | jq '.'

Wenn das funktioniert kannst du mit dem Cookie und dem CSRF Token zusammen einen Container erstellen.

curl -sk --insecure --cookie "$(<cookie)" --header "$(<csrftoken)" -X POST https://10.0.0.23:8006/api2/json/nodes/pve/lxc \
  -d vmid=101 \
  -d hostname=test-container \
  -d ostemplate=local:vztmpl/ubuntu-22.04.tar.zst \
  -d memory=512 \
  -d cores=1 \
  -d rootfs="local-lvm:8" \
  -d unprivileged=1)
von (716 Punkte)  
Diese Community basiert auf dem Prinzip der Selbstregulierung. Beiträge werden von Nutzern erstellt, bewertet und verbessert – ganz ohne zentrale Moderation.

Wer hilfreiche Fragen stellt oder gute Antworten gibt, sammelt Punkte. Mit steigender Punktzahl erhalten Mitglieder automatisch mehr Rechte, zum Beispiel

  • Kommentare verfassen
  • Beiträge bewerten
  • Inhalte bearbeiten
  • Inhalte ausblenden

So entsteht eine Plattform, auf der sich Qualität durchsetzt – getragen von einer engagierten Gemeinschaft. Unser Ziel: Guter Inhalt. Für alle.

2.3k Fragen

2.8k Antworten

260 Kommentare

12 Nutzer