
Openship Docker Compose部署指南现有compose文件原样上线【免费下载链接】openshipSelf-hosted deployment platform项目地址: https://gitcode.com/GitHub_Trending/ope/openship如果你有一堆现成的docker-compose.yml项目想免去重写配置的麻烦Openship就是你的答案——这是一款开源的自托管部署平台Self-hosted deployment platform内置 CI/CD能把你仓库里现有的Docker Compose文件原样读取并整体上线每个 service 自动变成一条可管理的服务记录端口、卷、环境变量、健康检查全部保留还自动附带域名与 Lets Encrypt 证书。为什么你的 compose 文件一行都不用改传统方式上线多服务应用往往要手写反向代理、证书、重启策略Openship 的做法是直接解析你的 compose 文件把「文件」变成「受管服务」逐个 service 建模文件里声明的每个服务都会变成项目Services页中的一行带 Public/Internal 徽标和实时状态Running、Stopped、Failed…。只读不写Openship 不会改动你的docker-compose.yml仪表盘上的修改由平台单独保存仓库文件永远是干净的。每次部署自动对账再部署时平台重读当前 compose 源仓库或本地目录自动与现有服务行同步push 时若 compose 文件没被改动还会跳过扫描。详细规则可参考官方文档中的多服务指南apps/web/content/docs/guides/compose-multi-service.mdx。三步快速上线一键部署现有 compose 文件第 1 步在服务器上装好 Openship最省心的方式是克隆仓库后用 Docker Compose 直接拉起整套平台Postgres Redis API 仪表盘 OpenResty 边缘节点详见 docker/docker-compose.ymlgit clone https://gitcode.com/GitHub_Trending/ope/openship cd openship cp .env.example .env # 然后按需编辑 docker compose --env-file .env -f docker/docker-compose.yml up -d 边缘节点是容器化的 OpenResty直接接管:80/:443负责路由和 TLS仅限 Linux 的 host 网络模式。第 2 步创建项目指向 compose 文件打开仪表盘的Library页连接你的 GitHub 仓库或选择本地目录。选中目标仓库进入部署向导——Openship 会自动读到docker-compose.yml并把每个服务列出来。如果 compose 文件不在仓库根目录比如deploy/docker-compose.yml在向导的Compose file输入框填入路径点Scan即可重新识别文件名不叫docker-compose.yml如stack.yml也完全没问题。想把这个路径固化下来在项目里放一个openship.json即可{ composePath: deploy/docker-compose/docker-compose.yml }compose 解析的核心逻辑在 apps/api/src/lib/compose-parser.ts它对相对路径build:上下文的解析方式与原生docker compose build完全一致。第 3 步部署并验证点击Deploy后顶部步骤条会逐项点亮实时终端流式输出构建日志。完成后可在项目的Services标签页逐个查看服务状态点任意一行还能进入服务详情页Overview容器端口、映射宿主机端口、网络地址、卷挂载Logs / Terminal实时日志与容器内 ShellEnvironment / Settings在线改环境变量、镜像、重启策略、健康检查Backup对数据库等有状态容器直接安排定期备份Openship 会读取 compose 文件的哪些字段平台对以下字段做了完整建模并参与部署类别字段镜像与构建image、build、dockerfile网络与依赖ports、depends_on、restart配置与数据environment、volumes、command健康检查healthcheck而networks、build args、labels、profiles、注释等其余内容原样保留——平台既不读取也不重写它们。仪表盘改了、仓库也改了怎么办三方合并说清楚这是新手最容易踩的坑Openship 用三方对比base / 你的编辑 / 仓库现值优雅解决仓库改动你改过平台行为否—保持你的值是否自动采用仓库值是是保留你的值并标记为漂移drift待你确认出现漂移时Services 页会弹出醒目的横幅逐字段展示from → to差异你只需选Accept upstream用仓库值或Keep mine锁定我的编辑——你的修改永远不会被静默覆盖。常用命令速查CLI 管理 compose 服务栈偏好终端所有服务操作都有对应 CLI 命令需 Docker Compose v2openship service list --project my-app # 列出服务 openship service sync --project my-app ./docker-compose.yml # 强制按文件重建服务行 openship service logs --project my-app web --follow openship service env set --project my-app web KEYvalue openship service start --project my-app db # start / stop / restart 同理常见问题清单 Q加完服务为什么没跑起来A添加服务只是「保存」容器在部署时才启动。项目若已有运行中的部署会自动重新部署否则手动点一次 Deploy或用服务页的Enable start。Qservice sync提示找不到 dockerA该命令依赖docker compose config来校验文件请在运行命令的机器上安装 Docker Compose v2。Q云部署时 volumes 不生效A自托管/自有服务器上 compose 语义完整host:container映射与卷挂载都保留Openship Cloud 上只路由容器端口数据靠工作区磁盘 备份策略保障。写在最后Openship 让「现成 compose 文件」从一堆本地配置变成可持续运维的线上服务栈解析原样、漂移可查、备份内置、证书自动。如果你正在维护多个 Compose 项目不妨按上面的三步把第一个搬上线——之后每次 push一切都会自动跟上 平台自托管栈docker/docker-compose.yml含变量说明版本可用OPENSHIP_VERSION锁定环境变量模板.env.example多服务完整指南apps/web/content/docs/guides/compose-multi-service.mdxcompose 解析实现apps/api/src/lib/compose-parser.ts【免费下载链接】openshipSelf-hosted deployment platform项目地址: https://gitcode.com/GitHub_Trending/ope/openship创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考