Preface
This is a control panel for interfacing with mainstream virtualization technologies, supplementing features not natively supported by virtualization platforms such as user management, traffic monitoring, NAT port mapping, and custom system images.
Welcome to support the project with a Star for free --> https://github.com/oneclickvirt/oneclickvirt
WARNING
This is a project in early development and may have various bugs and instabilities. Please assess the risks before use. Updates will be relatively frequent.
Environment Requirements
Supported architectures: amd64 or arm64
Supported systems: Linux, Windows, or any self-compiled system architecture
Only requires public network access. The deployed machine does not need an independent public IP address. This is just a virtualization control panel that only needs port display for the frontend. In fact, one important reason for development is that I need to manage multiple virtualization environments without a public IPv4 address.
This control panel has no special environmental dependency requirements. For one-click deployment, you can use the all-in-one Docker image with database included or docker-compose deployment with separated containers.
Frontend static files are deployed through nginx or caddy or OpenResty. For non-source code deployment and non-Docker deployment, API path reverse proxy to the backend port is required.
Platform Features
Language internationalization: Frontend supports bilingual display in Chinese and English, defaults to Chinese display, with switchable default system language
Provider Integration: Supports ProxmoxVE, Incus, Docker, LXD - four major mainstream virtualization platforms, with more platforms coming soon
Flexible Instance Types: Supports automatic creation of virtual machines (VM) and containers (Container), providing a unified virtualization resource management experience through abstraction design
Built-in Image Seed Data: No need to search for platform-specific images yourself. All platforms come with self-compiled image loading, supporting unified management or custom image download URLs
Automatic NAT Port Mapping: Supports automatic port mapping for IPv4/IPv6, with mapped IPs supporting non-public IPs. Supports multiple network types:
NAT IPv4
NAT IPv4 + Independent IPv6
Independent IPv4
Independent IPv4 + IPv6
Pure IPv6Port Mapping Methods: Flexibly selects the best mapping solution automatically based on different Providers (native, device proxy, iptables, etc.)
Traffic Statistics: Integrates IP-level and network interface-level precise network traffic statistics. Forces traffic data synchronization during sensitive operations to ensure data accuracy
Monthly traffic usage statistics reset at the beginning of each month. Supports traffic statistics and limits at user, instance, and Provider levels
Invitation Code System: Supports non-public registration invitation mechanism, with different resource quota limits based on user levels
Resource Limits: Supports setting instance quantity/CPU/memory/disk/bandwidth quota management and traffic usage restrictions
All code is open source, but no commercial development will be undertaken
