proxmoxVE
v5.3
Mit dieser Proxmox -Bibliothek von PHP 8+ können Sie über API mit Ihrem Proxmox PVE -Server und Cluster interagieren.
Sie finden Fehler, Tippfehler oder erkennen, dass etwas nicht wie erwartet funktioniert. Bitte öffnen Sie ein Problem. Ich werde versuchen, so schnell wie möglich einen Fix zu veröffentlichen.
Die empfohlene Installation verwendet Komponist . Wenn Sie keinen Komponisten haben, worauf warten Sie noch?
Führen Sie in der Wurzel Ihres Projekts Folgendes aus:
$ composer require mrkampf/proxmox-ve Oder fügen Sie dies Ihrer Datei composer.json hinzu:
{
"require" : {
"mrkampf/proxmox-ve" : " ^0.4.4 "
}
}Führen Sie dann die Installation durch:
$ composer install --no-dev <?php
// Require the autoloader
require_once ' vendor/autoload.php ' ;
// Use the library namespace
use Proxmox PVE ;
// Then simply pass your credentials when creating the API client object.
$ proxmox = new PVE ( " hostname " , " username " , " password " , 8006 , " pve " , false );
// Note: Use "pam" instead of "pve" if you're using Standard Linux PAM authentication.
// Read all nodes
print_r ( $ proxmox -> nodes ()-> get ());
// Read all LXC
print_r ( $ proxmox -> nodes ()-> lxc ()-> get ());
// Read all LXC for a node
print_r ( $ proxmox -> nodes ()-> node ( " node_name " )-> lxc ()-> get ());
// Read all qemu
print_r ( $ proxmox -> nodes ()-> qemu ()-> get ());
// Read all QEMU for a node
print_r ( $ proxmox -> nodes ()-> node ( " node_name " )-> qemu ()-> get ()); <?php
// Require the autoloader
require_once ' vendor/autoload.php ' ;
// Use the library namespace
use Proxmox API ;
// Then simply pass your credentials when creating the API client object.
$ proxmox = new API ( " hostname " , " USER@REALM!TOKENID " , " aaaaaaaaa-bbb-cccc-dddd-ef0123456789 " , 8006 , false );
// Read all nodes
print_r ( $ proxmox -> nodes ()-> get ());
// Read all LXC
print_r ( $ proxmox -> nodes ()-> lxc ()-> get ());
// Read all LXC for a node
print_r ( $ proxmox -> nodes ()-> node ( " node_name " )-> lxc ()-> get ());
// Read all qemu
print_r ( $ proxmox -> nodes ()-> qemu ()-> get ());
// Read all QEMU for a node
print_r ( $ proxmox -> nodes ()-> node ( " node_name " )-> qemu ()-> get ()); <?php
// Require the autoloader
require_once ' vendor/autoload.php ' ;
// Use the library namespace
use Proxmox PVE ;
//Example for lazy login
$ proxmox = new PVE ( " hostname " , " username " , " password " , 8006 , " pve " , false , true );
//Login
$ proxmox -> getApi ()-> login ();
// Read all nodes
print_r ( $ proxmox -> nodes ()-> get ()); <?php
// Require the autoloader
require_once ' vendor/autoload.php ' ;
// Use the library namespace
use Proxmox PVE ;
$ customGuzzleHttpClient = new GuzzleHttp Client ();
//Example for lazy login
$ proxmox = new PVE ( " hostname " , " username " , " password " , 8006 , " pve " , false , false , $ customGuzzleHttpClient );
// Read all nodes
print_r ( $ proxmox -> nodes ()-> get ());| Warnung: Die Array -Optionen sind nach Version 3.0 nicht mehr unterstützt! |
|---|
<?php
// Require the autoloader
require_once ' vendor/autoload.php ' ;
// Use the library namespace
use Proxmox PVE ;
/**
* Connect established (For version 3.0)
*
* authType and port defaults to 'pam' and '8006' but you can specify them like so
*
* !!! WARNING !!!
* This variant is after version 3.0 no longer supported
*
*/
$ credentials = [
' hostname ' => ' 127.0.0.1 ' ,
' username ' => ' root ' ,
' password ' => ' example ' ,
' authType ' => ' pam ' ,
' port ' => ' 8006 ' ,
];
// Then simply pass your credentials when creating the API client object.
$ proxmox = new PVE ( $ credentials );
//Read all nodes
print_r ( $ proxmox -> nodes ()-> get ());
//Read all lxc
print_r ( $ proxmox -> nodes ()-> lxc ()-> get ());
//Read all qemu
print_r ( $ proxmox -> nodes ()-> qemu ()-> get ());