Openship:开源可自托管部署平台,内置 CI/CD 功能,多方式操作超便捷!

Openship:开源可自托管部署平台,内置 CI/CD 功能,多方式操作超便捷! Openship开源、可自托管的部署平台内置 CI/CD 功能如何完成推送代码、部署容器、管理基础设施这些操作呢可以通过桌面应用程序、Web 仪表盘或命令行界面CLI来完成。快速开始安装方面有两种方式一是使用 npm 全局安装npm i -g openship二是使用 curl 脚本安装curl -fsSL https://get.openship.io | sh。启动服务使用 openship up将 Openship 作为后台服务安装开机自启且自动重启打开仪表盘用 openship open停止服务用 openship stop。若想进行一次性的前台运行则使用 openship up --foreground。部署项目首先进入项目目录cd your-project接着初始化项目openship init将当前目录与项目关联最后部署项目openship deploy。使用 Docker 部署克隆仓库并使用 Docker Composegit clone https://github.com/oblien/openship.git cd openship cp .env.example .env docker compose up -d也可以下载桌面应用程序使用 openship install 命令或者从 openship.io 下载。功能特性内置 CI/CD支持代码推送即部署、预览环境、生产/预发布流程管理以及版本回滚。支持多种技术栈涵盖 Node、Python、Go、Rust、PHP、Ruby、Java、.NET、Docker 以及单体仓库monorepos等。完整后端支持支持 Postgres、MySQL、MongoDB、Redis 等数据库同时支持工作进程、WebSocket 和存储服务。域名与 SSL 管理自动配置 Lets Encrypt 证书支持通配符域名可无限添加域名并自动续期。CDN 服务具备边缘缓存、HTTP/3 协议、Brotli 压缩以及即时清除缓存等功能。邮件服务器内置支持 DKIM/SPF/DMARC 的 SMTP 服务无需使用 Mailgun 或 SES 等第三方服务。备份功能支持定期备份数据库和卷可一键恢复随时导出备份数据。实时监控实时展示构建日志、容器指标和资源使用情况。扩展能力支持在云端自动扩展自托管环境下支持多节点部署。可移植性使用标准 Docker 容器可在不同云服务提供商之间自由迁移。Docker Compose 支持可直接部署现有的 Docker Compose 文件。多平台部署有多种方式一是 Openship Cloud为托管式服务自动扩展无需设置二是任意 VPS如 Hetzner、DigitalOcean、Linode、OVH 等三是专用服务器包括裸金属服务器、托管服务器和家庭实验室服务器四是多服务器集群可在多台机器之间分配工作负载。无论选择哪种部署方式都可以使用相同的界面进行操作。三种操作界面有哪三种操作界面呢一是桌面应用程序提供完整的图形用户界面GUI实时日志展示一键完成各种操作二是 Web 仪表盘在浏览器中提供相同的用户界面适合团队协作使用三是命令行界面CLI支持脚本化操作适合集成到 CI 流程中。此外还提供 REST API 和 MCPAI 代理协议方便自动化和工具集成。完整的命令和 API 参考文档可在 openship.io/docs 查看。需要注意的是文档仍在不断完善中如果发现有缺失或不清晰的地方欢迎贡献内容这将帮助更快地完善文档。项目状态核心功能已可用于生产环境目前仍在积极开发中。接下来的开发计划包括哪些呢有多节点集群支持、负载均衡用户界面、私有网络、高级监控以及可视化 CI/CD 管道。贡献代码请参考 CONTRIBUTING.md 文件了解贡献指南。发布版本使用版本脚本发布新版本它会同步所有包的版本提交版本变更打标签并推送bun scripts/release.ts 0.2.0 # 显式指定版本 # 或者使用版本升级关键字patch | minor | major | rc例如从 0.1.x 升级到 0.2.0 可使用 minor推送标签后会触发 .github/workflows/release.yml 工作流该工作流会做什么呢一是构建 macOS、Windows 和 Linux 安装程序以及服务器压缩包附带 SHA-256 校验文件二是通过 npm OIDC 可信发布机制将 openship CLI 发布到 npm无需令牌三是创建 GitHub Release 并附上构建好的资产发布说明来自标签信息。如果想在应用内更新器中将某个版本标记为关键版本或添加推荐/信息提示请在打标签之前在 release-advisories.json 文件中添加相应条目客户端会根据发布标签拉取该信息。高层次的版本说明记录在 CHANGELOG.md 文件中。安全问题如果发现了安全漏洞该怎么做呢请私下报告切勿在公共 issue、PR 或讨论中公开披露。推荐通过以下方式报告[报告安全漏洞]这是一个私有 GitHub 安全建议只有你和维护者可以看到。关于报告范围、报告内容以及响应/披露流程请参考 SECURITY.md 文件。安全港政策允许善意的安全研究并会对有效的首次报告给予认可。许可证Openship 是开源软件采用 Apache License 2.0 许可协议。在 Apache 2.0 许可证的条款下可以做什么呢可以使用、运行、修改、自托管和分发该软件包括用于商业和闭源产品。完整的许可证文本请参阅 LICENSE 文件。