本项目基于上游二次开发:https://github.com/vanyouseea/o365
用于 Microsoft Graph 的 O365 多全局管理,并提供自助注册入口。
-
Docker 部署 + H2 持久化
- 默认使用 H2:
./data/o365(建议映射到宿主机目录持久化)
- 默认使用 H2:
-
公开注册(无邀请码)增强
- 后台开关、名额上限(0=不限)、已用统计、默认域名、固定订阅配置
- 域名下拉来自 Graph 已验证域名(显示为
@xxx) - 固定订阅支持 多选 SKU(可同时分配多个订阅)
- 同一 IP 每日最多注册 N 个(默认 2,可在系统配置
NO_INVITE_REG_IP_DAY_LIMIT调整;0=不限),兼容 Cloudflare Tunnel/反代(优先识别CF-Connecting-IP)
- 邀请码注册体验优化
- 邀请码模式下隐藏域名选择、自动展示邀请码后缀等
-
邀请码注册体验优化
- 邀请码模式下隐藏域名选择、自动展示邀请码后缀等
-
稳定性与交互修复
- 优化 assignLicense 等错误输出与前端提示
docker build -t o365:latest . mkdir -p /root/o365-data docker rm -f o365 2>/dev/null || true docker run -d --name o365 \ -p 9527:9527 \ -v /root/o365-data:/data \ --restart unless-stopped \ o365:latest
已发布 multi-arch(linux/amd64 + linux/arm64),Oracle ARM/AMD 服务器都可直接 pull。
docker pull datout/o365:latest mkdir -p /root/o365-data docker rm -f o365 2>/dev/null || true docker run -d --name o365 \ -p 9527:9527 \ -v /root/o365-data:/data \ --restart unless-stopped \ datout/o365:latest
仓库已内置 workflow:.github/workflows/docker-publish.yml。
- 推送到
master分支:自动发布datout/o365:latest - 打 tag(例如
v1.0.0):自动发布datout/o365:v1.0.0(并保留latest仅在 master 发布)
你需要在 GitHub 仓库 Secrets 中配置:
DOCKERHUB_USERNAMEDOCKERHUB_TOKEN(Docker Hub Access Token)
为保证全部功能可用,建议授予并执行 Admin consent:
Application.ReadWrite.All
Application.ReadWrite.OwnedBy
Directory.ReadWrite.All
RoleManagement.ReadWrite.Directory
User.ManageIdentities.All
User.ReadWrite.All
Reports.Read.All
Sites.FullControl.All
Domain.ReadWrite.All
Upstream:https://github.com/vanyouseea/o365