[PR #9047] Refactor: Docker-VM (Multi-OS / Cloud-Init / Stabilization) #7666

Open
opened 2026-02-05 08:05:26 +03:00 by OVERLORD · 0 comments
Owner

Original Pull Request: https://github.com/community-scripts/ProxmoxVE/pull/9047

State: open
Merged: No


✍️ Description

  • Multi-OS Support – Added Debian 12/13 + Ubuntu 22.04/24.04 selection via select_os()
  • Cloud-Init Integration – Optional Cloud-Init config; Ubuntu auto-enabled, Debian optional
  • Modular Architecture – External function files (vm-core.func, cloud-init.func, api.func) from git.community-scripts.org
  • Better Defaults – Q35 instead of i440fx; Host CPU instead of KVM64; 4GB RAM instead of 2GB
  • Docker via get.docker.com – Replaced manual repo setup with official one-liner + first-boot fallback service
  • Image Caching – Downloads cached in /var/lib/vz/template/cache/ for reuse
  • Simplified Disk Resize – Uses qemu-img resize instead of virt-resize
  • Auto-Login for nocloud – Serial console auto-login configured when Cloud-Init disabled
  • IP Detection – Automatic IP retrieval via QEMU guest agent in final summary
  • Code Cleanup – Removed inline ASCII art/colors; added section separators; fixed function naming (exit_script)

Fixes: #9040

Prerequisites (X in brackets)

  • Self-review completed – Code follows project standards.
  • Tested thoroughly – Changes work as expected.
  • No security risks – No hardcoded secrets, unnecessary privilege escalations, or permission issues.

🛠️ Type of Change (X in brackets)

  • 🐞 Bug fix – Resolves an issue without breaking functionality.
  • New feature – Adds new, non-breaking functionality.
  • 💥 Breaking change – Alters existing functionality in a way that may require updates.
  • 🆕 New script – A fully functional and tested script or script set.
  • 🌍 Website update – Changes to website-related JSON files or metadata.
  • 🔧 Refactoring / Code Cleanup – Improves readability or maintainability without changing functionality.
  • 📝 Documentation update – Changes to README, AppName.md, CONTRIBUTING.md, or other docs.
**Original Pull Request:** https://github.com/community-scripts/ProxmoxVE/pull/9047 **State:** open **Merged:** No --- <!--🛑 New scripts must be submitted to [ProxmoxVED](https://github.com/community-scripts/ProxmoxVED) for testing. PRs without prior testing will be closed. --> ## ✍️ Description - Multi-OS Support – Added Debian 12/13 + Ubuntu 22.04/24.04 selection via select_os() - Cloud-Init Integration – Optional Cloud-Init config; Ubuntu auto-enabled, Debian optional - Modular Architecture – External function files (vm-core.func, cloud-init.func, api.func) from git.community-scripts.org - Better Defaults – Q35 instead of i440fx; Host CPU instead of KVM64; 4GB RAM instead of 2GB - Docker via get.docker.com – Replaced manual repo setup with official one-liner + first-boot fallback service - Image Caching – Downloads cached in /var/lib/vz/template/cache/ for reuse - Simplified Disk Resize – Uses qemu-img resize instead of virt-resize - Auto-Login for nocloud – Serial console auto-login configured when Cloud-Init disabled - IP Detection – Automatic IP retrieval via QEMU guest agent in final summary - Code Cleanup – Removed inline ASCII art/colors; added section separators; fixed function naming (exit_script) ## 🔗 Related PR / Issue Fixes: #9040 ## ✅ Prerequisites (**X** in brackets) - [x] **Self-review completed** – Code follows project standards. - [x] **Tested thoroughly** – Changes work as expected. - [x] **No security risks** – No hardcoded secrets, unnecessary privilege escalations, or permission issues. --- ## 🛠️ Type of Change (**X** in brackets) - [ ] 🐞 **Bug fix** – Resolves an issue without breaking functionality. - [x] ✨ **New feature** – Adds new, non-breaking functionality. - [ ] 💥 **Breaking change** – Alters existing functionality in a way that may require updates. - [ ] 🆕 **New script** – A fully functional and tested script or script set. - [ ] 🌍 **Website update** – Changes to website-related JSON files or metadata. - [ ] 🔧 **Refactoring / Code Cleanup** – Improves readability or maintainability without changing functionality. - [ ] 📝 **Documentation update** – Changes to `README`, `AppName.md`, `CONTRIBUTING.md`, or other docs.
OVERLORD added the pull-request label 2026-02-05 08:05:26 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/ProxmoxVE#7666