LXD容器管理系统
项目特色
高性能Go后端服务 - 完整的容器管理功能 - IPv6独立绑定支持 - NAT端口转发(IPv4/IPv6双栈) - 流量监控与统计 - Web VNC控制台 - 安全的API认证 - 与魔方财务系统无缝集成
版本功能
核心容器管理 - NAT端口转发 - IPv6独立绑定 - 流量监控与统计 - VNC控制台访问 - 安全与认证 - 系统集成 - 前端界面优化 - 数据库拓展 - 管理后台 - 反向代理功能
注:所有测试开发环境均在Debian12/13-Ubuntu24/25下LXD5.21/6.5下通过测试
本程序基于Ubuntu/Debian最新系统开发,部署请优先使用最新的纯净镜像
一、安装LXD
安装脚本
XML/HTML代码
- bash <(curl -sSL https://raw.githubusercontent.com/xkatld/zjmf-lxd-server/refs/heads/main/install/lxd.sh)
如果当前终端中 lxc/lxd 命令不可用,请执行以下命令之一:
XML/HTML代码
- 1. 重新登录系统
- 2. 执行:
- source /etc/profile.d/snap.sh
- 3. 执行:
- export PATH="/snap/bin:/var/lib/snapd/snap/bin:$PATH"
注意:这个容量是所有容器可用最大空间
Size in GiB of the new loop device (1GiB minimum) [default=14GiB]: 60
二、安装或构建镜像
安装脚本
XML/HTML代码
- bash <(curl -sSL https://raw.githubusercontent.com/xkatld/zjmf-lxd-server/refs/heads/main/install/lxdimages.sh)
使用方法
[1] 下载预构建容器模板(从网上下载预置的linux版本)
[2] 安装 lxdimages 工具
lxdimages [操作系统发行版] [版本号] -add [工具集] -name [自定义镜像名-注意不能带小数点]
lxdimages alpine 3.22 -add ssh -name alpine322
lxdimages debian bookworm -add ssh -name debian12
支持的参数
XML/HTML代码
- Distribution[操作系统发行版] Release[版本号] Tools[工具集]
- ubuntu jammy,noble,plucky ssh
- debian bullseye,bookworm,trixie ssh
- centos 9-Stream,10-Stream ssh
- fedora 41,42 ssh
- almalinux 8,9,10 ssh
- rockylinux 8,9,10 ssh
- oracle 8,9 ssh
- opensuse 15.5,15.6,tumbleweed ssh
- alpine 3.19,3.20,3.21,3.22,edge ssh
- amazonlinux 2,2023 ssh
10 个发行版:Ubuntu, Debian, CentOS, Fedora, AlmaLinux, Rocky Linux, Oracle, openSUSE, Alpine, Amazon Linux
15 个工具:ssh, docker, nodejs, python, java, golang, php, nginx, apache, mysql, postgresql, redis, mongodb, git
自动架构检测:amd64/arm64
下载导入
GitHub构建:
直链节点:
1.使用说明
下载到任意目录后在目录使用下面命令就行了
下载的镜像名:debian12-amd64-ssh.tar.gz
导入后镜像名:debian12
XML/HTML代码
- lxc image import debian12-amd64-ssh.tar.gz --alias debian12
三、安装GO后端
安装脚本
XML/HTML代码
- bash <(curl -sSL https://raw.githubusercontent.com/xkatld/zjmf-lxd-server/refs/heads/main/install/lxdapi.sh) -v v1.0.3
需要用到的信息:
XML/HTML代码
- 服务器外网 IP [192.168.10.100]:
- API 访问密钥 [2E264ABCD445BD60]:
- API 服务端口 [8080]:
其他信息根据本机配置和需求选择
在监控面板填写信息(同上):
XML/HTML代码
- 添加节点:机器名称(随意)
- API地址:https://192.168.10.100:8080
- API密钥:2E264ABCD445BD60
以上参数配置均在 /opt/lxdapi/config.yaml
四、安装节点监控面板
安装脚本
XML/HTML代码
- bash <(curl -sSL https://raw.githubusercontent.com/xkatld/zjmf-lxd-server/refs/heads/main/install/lxdweb.sh) -v v1.0.3
管理员账户管理命令 (服务后台运行时可用):
XML/HTML代码
- lxdweb admin create 创建新管理员
- lxdweb admin password 修改管理员密码
- lxdweb admin list 列出所有管理员
- lxdweb admin delete 删除管理员
创建一个管理员,然后就可以web管理。
后台登陆:https://192.168.10.100:3000
添加上面节点就可以管理上面的服务器了。
五、配置魔方插件
步骤1: 上传插件
将项目中的 lxdserver 整个目录上传到您魔方财务实例的插件目录:/public/plugins/servers/。
步骤2: 添加服务器接口
登录魔方财务后台,进入 产品设置 -> 接口管理 -> 新增接口。
在插件列表中选择 魔方财务-LXD对接插件 by xkatld。
填写接口信息:
接口名称:自定义一个易于识别的名称,例如 "美国LXD服务器"。
主机名/IP地址:填写您后端 API 服务器的 IP 地址。
端口:填写您在 config.yaml 中配置的 port (例如 8080)。
secure:勾选启用SSL连接模式。
访问密钥 (accesshash):必须填写您在 config.yaml 中设置的 api_hash。
步骤3: 测试连接
填写完毕后,点击 "测试连接"。如果一切正常,您会收到 "连接成功" 的提示。如果失败,请检查防火墙、IP、端口和 api_hash 是否正确。
步骤4: 配置产品
进入 产品设置 -> 商品配置,添加或编辑您的 LXD 产品。
在 模块设置 标签页,接口 一栏选择您刚刚创建的 LXD 接口。
根据页面提示,填写产品的具体配置,如 核心数、硬盘大小、内存、带宽 等。这些配置会作为创建容器时的参数。
其他
1.弹性配置
弹性套餐:
XML/HTML代码
- 配置选项名称 配置项类型 子项名称 单位
- cpus|CPU cpu核心单选 1|1核 纯数字
- memory|内存 内存单选 512MB|512MB 支持MB GB
- disk|硬盘 系统盘容量单选 512MB|512MB 支持MB GB
- traffic_limit|月流量限制 任意数量单选 100|100G 纯数字
- ingress|上行带宽 带宽单选 100Mbit|100Mbps 支持Mbit Gbit
- egress|下行带宽 带宽单选 100Mbit|100Mbps 支持Mbit Gbit
- image|操作系统 操作系统 ubuntu24|Ubuntu^ubuntu24 amd64 固定格式
- nat_limit|NAT规则数量 任意数量单选 5|5条 纯数字
- ipv6_limit|IPv6绑定数量 任意数量单选 1|1条 纯数字
- proxy_limit|反代理规则数量 任意数量单选 1|1条 纯数字
以上流程就是一个完整的LXD集群管理的搭建教程。其中前三步在节点搭建,第四步是对接节点,实现集中管理。第五步谁搭建魔方财务,实现在线销售系统,自用可以不要此步骤。

