diff --git a/README.en.md b/README.en.md new file mode 100644 index 00000000..3e9a11a4 --- /dev/null +++ b/README.en.md @@ -0,0 +1,307 @@ +
+ One-KVM Logo +

One-KVM

+

DIY IP-KVM solution based on PiKVM

+ + [![GitHub stars](https://img.shields.io/github/stars/mofeng-git/One-KVM?style=social)](https://github.com/mofeng-git/One-KVM/stargazers) + [![GitHub forks](https://img.shields.io/github/forks/mofeng-git/One-KVM?style=social)](https://github.com/mofeng-git/One-KVM/network/members) + [![GitHub issues](https://img.shields.io/github/issues/mofeng-git/One-KVM)](https://github.com/mofeng-git/One-KVM/issues) + [![GitHub license](https://img.shields.io/github/license/mofeng-git/One-KVM)](https://github.com/mofeng-git/One-KVM/blob/master/LICENSE) + +

+ 📖 Documentation • + 🚀 Live Demo • + ⚡ Quick Start • + 📊 Features +

+
+ +[简体中文](README.md) | English + +--- + +## 📋 Table of Contents + +- [Overview](#project-overview) +- [Features](#features) +- [Quick Start](#quick-start) +- [Contributing](#contributing) +- [Others](#others) + +## 📖 Project Overview + +**One-KVM** is a DIY IP-KVM solution built upon the open-source [PiKVM](https://github.com/pikvm/pikvm) project. It uses cost-effective hardware to provide BIOS-level remote management for servers and workstations. + +### Use Cases + +- **Home lab management** – Remotely manage servers and development devices +- **Server maintenance** – Perform system maintenance without physical access +- **System recovery** – Troubleshoot boot and BIOS/UEFI issues remotely + +![One-KVM UI Screenshot](https://github.com/user-attachments/assets/a7848bca-e43c-434e-b812-27a45fad7910) + +## 📊 Features + +### Core Capabilities + +| Feature | Description | Benefit | +|------|------|------| +| **Non-intrusive** | No software/driver required on the target machine | OS-agnostic; access BIOS/UEFI | +| **Cost-effective** | Leverages affordable hardware (TV boxes, dev boards) | Lower cost for KVM-over-IP | +| **Extendable** | Added utilities on top of PiKVM | Docker, recording, Chinese UI | +| **Deployment** | Supports Docker and prebuilt images | Preconfigured images for specific devices | + +### Limitations + +This project is maintained by an individual with limited resources and no commercial plan. + +- No built-in free NAT punching/tunneling service +- No 24×7 technical support +- No guarantee on stability/compliance; use at your own risk +- User experience is optimized, but basic technical skills are still required + +### Feature Comparison + +> 💡 **Note:** The table below compares One-KVM with other PiKVM-based projects for reference only. If there are omissions or inaccuracies, please open an issue to help improve it. + +| Feature | One-KVM | PiKVM | ArmKVM | BLIKVM | +|:--------:|:-------:|:-----:|:------:|:------:| +| Simplified Chinese WebUI | ✅ | ❌ | ✅ | ✅ | +| Remote video stream | MJPEG/H.264 | MJPEG/H.264 | MJPEG/H.264 | MJPEG/H.264 | +| H.264 encoding | CPU | GPU | Unknown | GPU | +| Remote audio | ✅ | ✅ | ✅ | ✅ | +| Remote mouse/keyboard | OTG/CH9329 | OTG/CH9329/Pico/Bluetooth | OTG | OTG | +| VNC control | ✅ | ✅ | ✅ | ✅ | +| ATX power control | GPIO/USB relay | GPIO | GPIO | GPIO | +| Virtual drive mounting | ✅ | ✅ | ✅ | ✅ | +| Web terminal | ✅ | ✅ | ✅ | ✅ | +| Docker deployment | ✅ | ❌ | ❌ | ❌ | +| Commercial offering | ❌ | ✅ | ✅ | ✅ | + +## ⚡ Quick Start + +### Method 1: Docker (Recommended) + +The Docker variant supports OTG or CH9329 as virtual HID and runs on Linux for amd64/arm64/armv7. + +#### One-liner Script + +```bash +curl -sSL https://one-kvm.mofeng.run/quick_start.sh -o quick_start.sh && bash quick_start.sh +``` + +#### Manual Deployment + +It is recommended to use the `--net=host` network mode for better WOL functionality and WebRTC communication support. + +Docker host network mode: + + Port 8080: HTTP Web service + Port 4430: HTTPS Web service + Port 5900: VNC service + Port 623: IPMI service + Ports 20000-40000: WebRTC communication port range for low-latency video + Port 9 (UDP): Wake-on-LAN (WOL) + +Docker host mode: + +**Using OTG as virtual HID:** + +```bash +sudo docker run --name kvmd -itd --privileged=true \ + -v /lib/modules:/lib/modules:ro -v /dev:/dev \ + -v /sys/kernel/config:/sys/kernel/config -e OTG=1 \ + --net=host \ + silentwind0/kvmd +``` + +**Using CH9329 as virtual HID:** + +```bash +sudo docker run --name kvmd -itd \ + --device /dev/video0:/dev/video0 \ + --device /dev/ttyUSB0:/dev/ttyUSB0 \ + --net=host \ + silentwind0/kvmd +``` + +Docker bridge mode: + +**Using OTG as virtual HID:** + +```bash +sudo docker run --name kvmd -itd --privileged=true \ + -v /lib/modules:/lib/modules:ro -v /dev:/dev \ + -v /sys/kernel/config:/sys/kernel/config -e OTG=1 \ + -p 8080:8080 -p 4430:4430 -p 5900:5900 -p 623:623 \ + silentwind0/kvmd +``` + +**Using CH9329 as virtual HID:** + +```bash +sudo docker run --name kvmd -itd \ + --device /dev/video0:/dev/video0 \ + --device /dev/ttyUSB0:/dev/ttyUSB0 \ + -p 8080:8080 -p 4430:4430 -p 5900:5900 -p 623:623 \ + silentwind0/kvmd +``` + +### Method 2: Flash Prebuilt One-KVM Images + +Preconfigured images are provided for specific hardware platforms to simplify deployment and enable out-of-the-box experience. + +#### Download + +**GitHub:** +- **GitHub Releases:** [https://github.com/mofeng-git/One-KVM/releases](https://github.com/mofeng-git/One-KVM/releases) + +**Other mirrors:** +- **No-login mirror:** [https://pan.huang1111.cn/s/mxkx3T1](https://pan.huang1111.cn/s/mxkx3T1) +- **Baidu Netdisk:** [https://pan.baidu.com/s/166-2Y8PBF4SbHXFkGmFJYg?pwd=o9aj](https://pan.baidu.com/s/166-2Y8PBF4SbHXFkGmFJYg?pwd=o9aj) (code: o9aj) + +#### Supported Hardware Platforms + +| Firmware | Codename | Hardware | Latest | Status | +|:--------:|:--------:|:--------:|:------:|:----:| +| OneCloud | Onecloud | USB capture card, OTG | 241018 | ✅ | +| CumeBox 2 | Cumebox2 | USB capture card, OTG | 241004 | ✅ | +| Vmare | Vmare-uefi | USB capture card, CH9329 | 241004 | ✅ | +| VirtualBox | Virtualbox-uefi | USB capture card, CH9329 | 241004 | ✅ | +| s905l3a Generic | E900v22c | USB capture card, OTG | 241004 | ✅ | +| Chainedbox | Chainedbox | USB capture card, OTG | 241004 | ✅ | +| Loongson 2K0300 | 2k0300 | USB capture card, CH9329 | 241025 | ✅ | + +## 🤝 Contributing + +Contributions of all kinds are welcome! + +### How to Contribute + +1. **Fork this repo** +2. **Create a feature branch:** `git checkout -b feature/AmazingFeature` +3. **Commit your changes:** `git commit -m 'Add some AmazingFeature'` +4. **Push to the branch:** `git push origin feature/AmazingFeature` +5. **Open a Pull Request** + +### Report Issues + +If you find bugs or have suggestions: +1. Open an issue via [GitHub Issues](https://github.com/mofeng-git/One-KVM/issues) +2. Provide detailed error logs and reproduction steps +3. Include your hardware and system information + +### Sponsorship + +This project builds upon many great open-source projects and requires considerable time for testing and maintenance. If you find it helpful, consider supporting via **[Afdian](https://afdian.com/a/silentwind)**. + +#### Thanks + +
+Click to view the thank-you list + +- 浩龙的电子嵌入式之路 + +- Tsuki + +- H_xiaoming + +- 0蓝蓝0 + +- fairybl + +- Will + +- 浩龙的电子嵌入式之路 + +- 自.知 + +- 观棋不语٩ ི۶ + +- 爱发电用户_a57a4 + +- 爱发电用户_2c769 + +- 霜序 + +- 远方(闲鱼用户名:小远技术店铺) + +- 爱发电用户_399fc + +- 斐斐の + +- 爱发电用户_09451 + +- 超高校级的錆鱼 + +- 爱发电用户_08cff + +- guoke + +- mgt + +- 姜沢掵 + +- ui_beam + +- 爱发电用户_c0dd7 + +- 爱发电用户_dnjK + +- 忍者胖猪 + +- 永遠の願い + +- 爱发电用户_GBrF + +- 爱发电用户_fd65c + +- 爱发电用户_vhNa + +- 爱发电用户_Xu6S + +- moss + +- woshididi + +- 爱发电用户_a0fd1 + +- 爱发电用户_f6bH + +- 码农 + +- 爱发电用户_6639f + +- jeron + +- 爱发电用户_CN7y + +- 爱发电用户_Up6w + +- 爱发电用户_e3202 + +- ...... + +
+ +#### Sponsors + +This project is supported by the following sponsors: + +**CDN & Security:** +- **[Tencent EdgeOne](https://edgeone.ai/zh?from=github)** – CDN acceleration and security protection + +![Tencent EdgeOne](https://edgeone.ai/media/34fe3a45-492d-4ea4-ae5d-ea1087ca7b4b.png) + +**File Storage:** +- **[Huang1111公益计划](https://pan.huang1111.cn/s/mxkx3T1)** – No-login download service + +## 📚 Others + +### Open-source Projects Used + +This project is built upon the following excellent open-source projects: + +- [PiKVM](https://github.com/pikvm/pikvm) – Open-source DIY IP-KVM solution + + diff --git a/README.md b/README.md index 36c07b2e..286b1bcd 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,8 @@

One-KVM

基于 PiKVM 的 DIY IP-KVM 解决方案

+

简体中文 | English

+ [![GitHub stars](https://img.shields.io/github/stars/mofeng-git/One-KVM?style=social)](https://github.com/mofeng-git/One-KVM/stargazers) [![GitHub forks](https://img.shields.io/github/forks/mofeng-git/One-KVM?style=social)](https://github.com/mofeng-git/One-KVM/network/members) [![GitHub issues](https://img.shields.io/github/issues/mofeng-git/One-KVM)](https://github.com/mofeng-git/One-KVM/issues) @@ -90,6 +92,41 @@ curl -sSL https://one-kvm.mofeng.run/quick_start.sh -o quick_start.sh && bash qu #### 手动部署 +推荐使用 --net=host 网络模式以获得更好的 wol 功能和 webrtc 通信支持。 + +docker host 网络模式: + + 端口 8080:HTTP Web 服务 + 端口 4430:HTTPS Web 服务 + 端口 5900:VNC 服务 + 端口 623:IPMI 服务 + 端口 20000-40000:WebRTC 通信端口范围,用于低延迟视频传输 + 端口 9(UDP):Wake-on-LAN(WOL)唤醒功能 + +docker host 模式: + +**使用 OTG 作为虚拟 HID:** + +```bash +sudo docker run --name kvmd -itd --privileged=true \ + -v /lib/modules:/lib/modules:ro -v /dev:/dev \ + -v /sys/kernel/config:/sys/kernel/config -e OTG=1 \ + --net=host \ + silentwind0/kvmd +``` + +**使用 CH9329 作为虚拟 HID:** + +```bash +sudo docker run --name kvmd -itd \ + --device /dev/video0:/dev/video0 \ + --device /dev/ttyUSB0:/dev/ttyUSB0 \ + --net=host \ + silentwind0/kvmd +``` + +docker bridge 模式: + **使用 OTG 作为虚拟 HID:** ```bash @@ -106,7 +143,6 @@ sudo docker run --name kvmd -itd --privileged=true \ sudo docker run --name kvmd -itd \ --device /dev/video0:/dev/video0 \ --device /dev/ttyUSB0:/dev/ttyUSB0 \ - --device /dev/snd:/dev/snd \ -p 8080:8080 -p 4430:4430 -p 5900:5900 -p 623:623 \ silentwind0/kvmd ```