openGym教程:3.8k星开源健身记录神器,Docker一键部署+安卓APP,练完的数据只存在自己手里

说到健身记录 App,你是不是也踩过这些坑:Strong、Hevy 免费版功能阉割,想看完整的历史曲线得掏订阅费;换了手机历史记录导不出来;更别提哪天公司倒闭,你练了两年的数据直接蒸发。数据存在别人的服务器上,就总有这么一天。

openGym封面

今天介绍的 openGym(GitHub 3.8k Star,AGPL-3.0 开源)思路完全相反:数据放在你自己的服务器上。一条 docker compose up 就能跑起来,手机上练完随手记一组,配重计算、休息倒计时、肌肉热力图全都有,无广告、无订阅、无遥测。下面就一步步教你怎么部署和上手。

先看它长什么样

openGym 是个 PWA(就是能”添加到主屏幕”当 App 用的网页应用),界面为手机竖屏设计,深色主题,三个核心页面:首页(今天练什么+体重)、训练页(逐组记录)、统计页(热力图和曲线)。

openGym首页

首页:今天的计划和体重记录,一目了然

openGym训练页

训练页:逐组打勾,重量自动带出上次的值,组间休息自动倒计时

openGym统计页

统计页:一年训练热力图、体重曲线和个人纪录(PR)

准备工作(5分钟)

服务器端只需要一样东西:Docker(带 compose 插件)。飞牛 NAS、群晖、Ubuntu 服务器都行,官方镜像同时支持 amd64 和 arm64。没装的话一条命令搞定:

# Debian/Ubuntu 示例
curl -fsSL https://get.docker.com | sh
docker --version   # 能输出版本号就说明装好了

手机端可选:装官方安卓 APK,或者直接用浏览器打开部署好的网页”添加到主屏幕”(iPhone 就是这么用的,苹果不允许侧载,PWA 是唯一姿势)。

Docker 一键部署(核心步骤)

登录你的服务器,依次执行:

# 1. 下载源码(里面带 docker-compose.yml 和 .env 模板)
#    没法访问 GitHub 的话,文末夸克网盘里有打包好的源码 zip
git clone https://github.com/DuarteSantos8/openGym
cd openGym

# 2. 生成配置文件(默认端口 8080,本地就能用)
cp .env.example .env

# 3. 拉取预编译镜像并启动
docker compose pull
docker compose up -d

# 4. 看日志确认启动完成
docker compose logs -f

看到日志不再滚动后,浏览器打开 http://服务器IP:8080。首次启动会自动下载约 140MB 的动作演示素材(1300+ 个动作的动画),等一两分钟即可,这是一次性的。

小提醒:如果你的 .env 没改任何东西,默认是 http://localhost:8080。局域网手机访问要把 RP_ID 改成服务器 IP、ORIGIN 改成 http://服务器IP:8080,重启容器生效。要用指纹/面容(Passkey)登录,则必须配域名 + HTTPS,官方文档里 Cloudflare Tunnel 和 Caddy 的方案都是两行配置的事。

首次使用:3分钟建好你的训练计划

第1步:打开页面点 Create profile 创建档案,起个名字。想先试试不注册也行,有”跳过账号”入口(数据先存本地,之后再配对)。

第2步:选择周起始日(周一或周日),然后从 4 个内置模板里挑一个:推/拉/腿(PPL)、上下肢、全身、5×5。模板就是普通的可编辑计划,直接改动作就行。

第3步:动作库有 1324 个动作,支持按肌肉部位(身体图上点)和器械类型筛选,每个动作带动画演示。喜欢自定义动作也可以传自己的照片/GIF。

第4步:开始训练。到点打开首页就是今天的计划,重量自动填充上次的数值,做完一组右滑复制/左滑删除,组间休息自动倒计时,破纪录(PR)会实时提示。

对比项 openGym 主流云健身 App(免费版)
数据归属 ✅ 自己服务器的 ./data 文件夹,备份即全备份 ❌ 存在厂商云端,停服即清零
订阅费 ✅ 永久免费,无付费墙 ❌ 完整曲线/计划导出要会员
动作库 ✅ 1324 个动作+动画演示 ⚠️ 免费版够用,高级筛选受限
多端同步 ✅ 自部署同步,冲突字段级合并 ✅ 官方云同步
离线使用 ✅ 断网也能记,联网后补同步 ⚠️ 部分支持
广告/遥测 ✅ 全无 ❌ 免费版有广告推送

手机端怎么装

安卓:直接安装文末网盘里的 openGym-1.3.10.apk(官方签名,GitHub Release 同款文件,旁边附 .sha256 可校验)。App 检查更新也是自己升级,不上应用商店。

iPhone:Safari 打开你的部署地址 → 分享 → 添加到主屏幕,效果和 App 一样,还有本地提醒和休息倒计时通知。

纯手机、不想开服务器:APK 装上就是单机版,数据全在手机里,不需要注册账号,练完的数据导出成一个 JSON 随时能带走。

常见问题

Q:不会命令行能用吗?
能。部署就 4 条命令(照抄就行),部署完之后全程手机点击操作,和普通 App 没区别。飞牛 NAS 用户在 Docker Compose 界面贴入配置也一样。

Q:Passkey(指纹登录)提示失败?
九成是 RP_ID/ORIGIN 和实际访问地址不一致。局域网 IP 访问就填 IP,域名+HTTPS 访问就填域名,改完 .env 重启容器。不想折腾就开 PASSWORD_LOGIN=1 用密码登录。

Q:数据会丢吗?
所有数据就是服务器上 ./data 里的几个 JSON 文件(README 里有文件清单),定期备份这个文件夹等于备份了一切。两台设备同时改会按字段合并,不会互相覆盖。

Q:之前用 Strong/Hevy 的记录能导入吗?
能,官方支持 FitNotes、Strong、Hevy 的 CSV/API 导入,还有苹果健康体重导出的导入入口。

软件下载

夸克网盘下载:https://pan.quark.cn/s/4243eec2de2d(openGym 文件夹内含 安卓APK v1.3.10 + 完整源码zip + 部署说明,当天所有软件都在这个文件夹里)

💬 关注公众号:「实用软技」,在公众号窗口里回复关键字「软件」即可免费获取更多软件

100T高转存免费网盘资源精选【持续更中~~~~】:点击查看

发表回复