Vxero Neo
Vxero Neo 是仅基于 SSH 的 CLI,通过安装 Docker 与 Caddy,将 Docker 应用部署到任意 VPS,并实现 HTTPS 自动证书与零停机切换。
Vxero Neo 是什么?
Vxero Neo (Neo) 是一个原生 SSH 的命令行工具,用于将 Docker 应用部署到 VPS。它通过 SSH 连接您的服务器,设置 Docker 和 Caddy,并通过自动 SSL 部署应用以支持 HTTPS——无需安装代理或使用独立的控制平面。
Neo 还管理从本地开发到暂存和生产的全应用生命周期。它读取本地项目配置(包括 docker-compose.yml、.env 和 .neo.yml),通过 SSH 构建并传输镜像,进行健康检查,并实现零停机流量切换。
主要特性
- 仅 SSH 部署流程(无代理、无仪表板): Neo 在本地机器运行,通过 SSH 连接 VPS;除运行时所需的 Docker/Caddy 外,无需额外服务器端工具。
- 自动化服务器初始化(Docker + Caddy): 部署时,Neo 在目标服务器上设置 Docker 和 Caddy,使容器可运行并接收 HTTPS 流量。
- 从 compose/配置到实时切换: Neo 读取本地配置,构建镜像,通过 SSH 传输,健康检查通过后切换流量;旧容器在切换前继续运行。
- 即时 HTTPS 域名及备用证书选项: Neo 可使用 sslip.io(无需 DNS)通过
--temp提供 HTTPS。对于真实域名,可使用 Caddy 的 Let’s Encrypt(DNS 指向后),或通过--cert和--key使用自有证书。 - 配置生成与环境管理:
neo config generate扫描 docker-compose.yml,自动生成 .neo.yml,检测应用服务、sidecars、工作进程、环境变量和卷。Neo 还可通过neo env和neo sync等命令同步环境/状态。 - 蓝绿式零停机部署: 启动新容器,等待健康检查通过后执行流量切换,前一版本在切换前保持可用。
- 工作进程、sidecars 和持久卷: 在 .neo.yml 中定义后台工作进程和 sidecars,与主应用一同部署,共享卷和环境变量。在 .neo.yml 中声明卷以在重新部署间持久化数据。
- 多服务器与按环境设置: 使用
--to staging等标志部署到暂存或生产环境;每个环境可有独立的域名、环境变量和 SSL 配置。
如何使用 Vxero Neo
- 准备项目: 确保应用使用
docker-compose.yml(及可选.env)描述。 - 生成 Neo 部署配置: 在项目目录运行
neo config generate。Neo 扫描docker-compose.yml,生成 .neo.yml,包含检测到的服务(如应用、工作进程/sidecars(若定义/检测到)、环境变量和卷)。 - 本地开发(可选但支持): 使用
neo dev结合 .neo.yml 的环境加载包装 docker-compose。 - 通过 SSH 部署: 运行
neo deploy针对您的 VPS。Neo 从 Dockerfile(及 compose 派生配置)构建镜像,通过 SSH 传输,进行健康检查并切换流量。 - 启用 HTTPS: 使用
neo domain --temp获取基于 sslip.io 的即时 HTTPS URL,或 DNS 指向后使用 Let's Encrypt 自动 SSL 的真实域名,或提供--cert/--key使用自有证书。
使用场景
- 单 VM Docker 应用部署: 每个 VPS 部署一个容器化应用(如 Web 服务),偏好基于 SSH 自动化而非集群编排器。
- 暂存 → 生产共享配置: 通过 .neo.yml 生成和环境加载跨环境使用相同配置,先部署暂存,再以不同域名/SSL 设置推广到生产。
- 带 sidecars 和后台工作进程的应用: 部署主应用及 .neo.yml 中定义的工作进程和 sidecar 容器,包括共享环境变量和卷。
- 无需 DNS 修改快速 HTTPS 的项目: 使用
neo domain --temp通过 sslip.io 立即获取 HTTPS URL 测试,DNS 就绪后切换真实域名。 - 小团队零停机发布: 执行带健康检查的蓝绿式更新,旧版本在新型容器就绪前保持运行。
常见问题
-
Neo 会在我的服务器上安装代理吗? 不会。Neo 在您的本地机器上运行,并通过 SSH 连接到您的 VPS。服务器上仅设置 Docker 和 Caddy 用于应用运行时。
-
我已经在使用 docker-compose,如何切换到 Neo? 在项目目录中运行
neo config generate。Neo 会扫描docker-compose.yml并自动生成.neo.yml,然后您可以使用neo deploy部署应用。 -
支持哪些云提供商? Neo 可部署到任何提供 SSH 访问的 VPS,例如 DigitalOcean、Hetzner、Linode、Vultr、AWS EC2、GCP 和 Azure。Neo 部署到单个 VM(它不是像 Kubernetes 或 Docker Swarm 那样的多节点集群编排器)。
-
HTTPS 如何工作? Neo 支持
neo domain --temp通过 sslip.io 即时启用 HTTPS,neo domain app example.com在 DNS 指向后使用 Let’s Encrypt 自动 SSL,以及--cert/--key使用您自己的证书。 -
Neo 可以运行后台 worker 和数据库吗? Worker 可在
.neo.yml中声明,并作为使用相同镜像、环境变量和卷的独立容器部署。对于数据库,Neo 可将其作为 Docker sidecar/服务运行用于小型项目;对于有真实用户的生产环境,推荐使用托管数据库。
替代方案
- 手动 Docker + Caddy 部署脚本: 如果您偏好完全控制且已有自己的部署自动化,您可以构建并传输镜像、运行容器,并自行管理 Caddy/SSL。这通常比 Neo 的单命令工作流需要更多设置工作。
- Docker Swarm 或 Kubernetes: 这些是用于多节点部署的集群编排器。与 Neo 不同,它们针对跨集群的编排,而不是单个可通过 SSH 访问的 VPS。
- 其他以 VPS 为中心的 CI/CD 流水线: 您可以使用通用 CI/CD 工具通过 SSH 登录服务器、构建镜像并重启容器。与 Neo 相比,您需要自行处理配置生成、零停机切换逻辑和 HTTPS 集成。
- 托管容器平台: 管理路由和 TLS 的平台可以减少基础设施步骤。它们通常会牺牲 Neo 描述的“无代理/控制平面”的 SSH 优先部署模式。
替代品
Falconer
Falconer 是自更新知识平台,帮高速度团队在一个地方编写、分享并搜索可靠内部文档与代码上下文。
OpenFlags
OpenFlags 是开源自托管功能开关系统,支持渐进式交付;应用 SDK 本地评估,配套简单控制平面实现安全定向发布。
skills-janitor
skills-janitor 插件用于审计和跟踪 Claude Code 技能使用情况,并与九个聚焦的斜杠命令进行对比,零依赖。
Rectify
Rectify是一体化SaaS运营平台,集监控、分析、支持、路线图、更新日志与智能体管理于一处,通过对话在可视化工作区协同控制。
GitBoard
GitBoard 是原生 macOS 菜单栏应用,可查看 GitHub Projects 看板,按状态筛选、搜索问题,并在工作流中创建或分配任务。
Studio CLI
使用 Studio CLI 在终端控制 WordPress Studio:管理本地站点,创建/更新/删除 WordPress.com 预览,并进行身份认证。