xCloud Docker Deploy

🐳 xCloud 智能 Docker 部署编排专家

xCloud Docker 部署助手,自动检测项目类型、生成合规的 Dockerfile 和 compose 配置,解决端口冲突,并配套 GitHub Actions CI 流水线。

收藏
4.6k
安装
1.2k
版本
1.3.2
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

xCloud Docker Deploy 是一款面向 xCloud 平台的项目感知型部署技能,专注于将现有 Docker 项目适配至 xCloud 的 Custom Docker 部署模式。其核心工作流程分为三个阶段:

Phase 0 — 项目类型检测:通过扫描 wp-config.phpcomposer.jsonpackage.jsonrequirements.txt 等标志性文件,自动识别 WordPress、Laravel、Next.js、Node.js、Python 等技术栈,并路由至对应的处理路径。

Step 1 — 场景判定:分析 docker-compose.yml 的内容,识别四种典型场景:

  • Scenario A:源码构建(含 build: 指令)→ 移除构建指令,改用 GHCR 预构建镜像
  • Scenario B:代理冲突 / 多端口 / 外部配置 → 移除 Caddy/Traefik/nginx-proxy,替换为单端口 nginx-router
  • Scenario C:多服务构建 → 为每个服务生成独立的 GHCR 镜像路径和矩阵式 CI 工作流
  • 兼容模式:单镜像 + 单端口,仅需验证端口和环境变量

关键输出物:修改后的 docker-compose.yml.github/workflows/docker-build.yml(Scenario A/C)、.env.example 以及分步部署指南。

显著优点

1. 平台深度适配:专门针对 xCloud 的约束设计,自动处理 build: 指令忽略、SSL 层冲突、保留端口 80/443 等常见问题
2. 智能端口重写:内置规则自动将非法的 80:80 映射改写为 3080:80,避免部署失败

3. 零配置 CI 集成:基于模板自动生成 GitHub Actions 工作流,支持单服务或多服务矩阵构建

4. 多栈支持:覆盖 WordPress、Laravel、Next.js、Node.js、Python、Go 等主流技术栈

5. 安全沙箱设计:声明无网络调用、无可执行文件、完全沙箱化运行

潜在缺点与局限性

  • 平台绑定较深:生成的配置高度针对 xCloud 优化,迁移至其他 Docker 平台需手动调整
  • GHCR 依赖:预构建镜像强制使用 GitHub Container Registry,未内置支持 Docker Hub 或其他镜像仓库
  • 版本兼容性要求configs.content: 内联语法需要 Docker Compose v2.23+,旧版本需退避至 command: 方案
  • 复杂路由场景有限:对于需要精细控制请求路由、多域名或高级重写规则的应用,自动生成的 nginx-router 可能不足

适合人群

  • 使用 xCloud 托管的开发者与 DevOps 工程师
  • 希望将现有 Docker 项目迁移至 xCloud 的团队
  • 需要快速搭建 CI/CD 流水线但不愿深入编写 GitHub Actions 配置的技术人员
  • 运行 WordPress、Laravel、Next.js 等常见框架的中型项目

常规风险

1. 端口冲突未完全覆盖:虽然自动重写 80/443,但若用户手动指定其他系统保留端口(如 22、25),可能仍会导致部署失败
2. 环境变量遗漏.env.example 基于 ${VAR} 模式提取,动态生成或运行时计算的环境变量可能未被捕获

3. 镜像拉取延迟:首次部署依赖 GHCR 构建完成,若网络或权限配置不当,xCloud 部署可能因镜像不存在而失败

4. 数据卷持久化:技能提示保留 volumes: 配置,但未主动验证数据备份策略,生产环境需自行确保数据安全

5. 官方 API 职责分离:本技能仅处理项目配置生成,实际的服务器、站点、SSL 等运维操作需调用官方 xcloud:* 技能,用户需明确区分两者边界

xCloud Docker Deploy 内容

assets文件夹
compose-templates文件夹
examples文件夹
references文件夹
手动下载zip · 34.5 kB
github-actions-build.ymltext/plain
请选择文件