Openship CLI命令全参考:deploy、up、edge、access等子命令逐个讲(新手完整指南)
【免费下载链接】openshipSelf-hosted deployment platform项目地址: https://gitcode.com/GitHub_Trending/ope/openship
Openship是一款开源、可自托管的部署平台(Self-hosted deployment platform),内置 CI/CD:指向一个仓库,它就能自动构建、发布、路由并签发 TLS 证书。除了桌面端和 Web 仪表盘,Openship CLI是第三套操作界面——可脚本化、对 CI 友好,同时也是安装和管理自托管实例的唯一入口。本文按deploy、up(运行)、edge、access等核心子命令逐个讲解,并附上速查表,帮助你从零上手。
1️⃣ 安装与登录:CLI 的准备步骤
所有命令都来自同一个openship可执行文件,安装方式只有两种:
curl -fsSL https://get.openship.io | sh # 官方安装脚本(自带 Node 运行时) # 或:npm i -g openship(需要 Node 22+)登录与认证相关的子命令:
| 命令 | 作用 |
|---|---|
openship login | 用 Personal Access Token(PAT)认证远程实例 |
openship logout | 清除已保存的 token |
openship open | 在浏览器中打开仪表盘 |
openship context list / use / add | 管理多个连接上下文(多实例切换) |
💡 桌面端/本机回环实例无需登录(零认证模式);只有自托管服务器实例才需要login粘贴 PAT。PAT 可用openship token create直接生成。
2️⃣ 运行平台:up、status、stop 与 doctor
严格说 Openship 没有run子命令——启动控制平面的是openship up(详见官方文档 cli/run.mdx):
openship up # 作为开机自启服务安装并启动 openship up --public-url https://ship.example.com # 在 VPS 上对外提供仪表盘 openship up --dry-run # 只预览将安装什么,不改动机器- Linux + Docker → Compose 模式(默认):拉起 Postgres、Redis、API、仪表盘和容器化 OpenResty edge(占用 :80/:443);
- 其他环境 → bare 模式:单进程 + 内嵌数据库,适合把应用部署到远端服务器或云。
配套的日常运维命令:
openship(不带子命令):首次运行进入交互式向导,建管理员、配域名、装成自启服务;已安装后再运行则进入控制面板。openship status:查看本地服务是否已安装/在运行、端口占用、API 健康状态。openship stop:停止服务,且重启后不再自动拉起。openship doctor:检查数据库与服务健康,可修复损坏的本地数据库。openship update/openship uninstall:升级 CLI + 捆绑服务端 / 彻底卸载。
子命令定义可参考 up.ts。
3️⃣ 部署项目:init → deploy → logs → deployment
这是最常用的工作流(官方文档:cli/deploy.mdx):
cd your-project openship init # 把当前目录关联到一个项目(写入 .openship/project.json) openship deploy # 触发部署 openship logs <deployment-id> --follow # 实时跟踪构建日志deploy的自动路由逻辑:在 Git 仓库内 → 走 git 源构建;不在 Git 仓库 → 自动打包当前文件夹走上传部署(与仪表盘/MCP 的文件夹部署同一条流水线)。常用参数:
| 参数 | 说明 |
|---|---|
--branch/--commit | 指定分支或提交 SHA |
--env preview | 部署到预览环境(默认为 production) |
--watch | 部署完成前持续流式输出日志 |
--smart-route | 只重建有变更的服务(monorepo 友好) |
--service-ids | 只部署指定服务,避免重建有状态服务 |
--refresh | 重新套用当前环境变量,不拉代码不重建 |
deployment负责部署后的生命周期管理:
openship deployment list # 列出部署记录 openship deployment rollback <id> # 回滚到某次历史部署 openship deployment redeploy <id> # 从已有部署重新部署 openship deployment restart <id> # 重启容器 openship deployment ssl status <domain> # 查看/续期证书4️⃣ 资源管理:project、service、domain
openship project list / get / create / delete:项目是部署的基本单位;project git link / set-branch / auto-deploy负责关联 GitHub 仓库与推送自动部署;project env list / set管理环境变量(密钥在 API 侧自动掩码)。openship service list / get / add / rm:管理 Compose 多服务项目里的单个服务, 包括service env、service logs和service drift(检测运行态与配置的漂移)。openship domain list / add / preview / verify:为项目绑定自定义域名,domain preview会先预览需要添加的 DNS 记录(不保存任何变更),domain renew-all一键续期组织内所有即将过期的 SSL 证书。
5️⃣ edge 子命令:OpenResty 反向代理与路由规则
openship edge用于安装和管理占据 :80/:443 的OpenResty 边缘节点(路由 + Let's Encrypt + 逐路由安全规则),官方文档见 cli/edge.mdx:
| 子命令 | 作用 |
|---|---|
edge status | 诊断 edge 是否已安装并在 :80/:443 提供服务 |
edge up | 确保 edge 运行;端口被其他代理占用时给出修复选项 |
edge migrate | 接管 :80/:443,并把现有代理(如 Nginx)的站点导入edge |
edge takeover | 强制接管端口(原代理的站点将下线) |
edge sites | 扫描本机可被导入的反代站点 |
edge rules list/add/rm | 逐路由规则:限流、封禁国家/IP、CIDR 白名单、按状态码拦截 |
edge domains / traffic / analytics / logs | 域名管理、流量概览、访问者国家/路径分析、HTTP 访问日志 |
直接运行openship edge(不带参数)会进入交互式面板:按域名浏览流量、分析、路由规则,错误只在面板内提示而不会退出。Linux 主机端操作(migrate/takeover 等)无需登录即可使用。
6️⃣ 自托管基础设施:server、system、mail、backup
| 命令 | 用途 | |||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
openship server list / add / test / check | 管理 SSH 远程服务器:添加、测试连通性、运行组件健康检查 | |||||||||||||||||||||||||||
openship system settings get/set | 读取/更新实例级设置;system /> |