锻炼管理器wger的安装
本文是
2021年2月完成的,最近因为工作比较忙,就把这些老文章翻出来,但为了发表,老苏差不多又重写了一遍。因为当时跑的是
wger/apache,现在新的wger/apache版本在老苏的机器上,会遇到AH00141: Could not initialize random number generator错误。
什么是 wger ?
wger是一个用Django编写的锻炼管理器,是一个免费的开源Web应用程序,可以帮助您管理个人锻炼,体重和饮食计划,还可以用作简单的健身房管理实用程序。它还提供了REST API,可轻松与其他项目和工具集成。
前期准备
反向代理
如果要从公网访问,需要先要准备好域名,当然这一步不是必须的,只在局域网使用的话也是可以的
| 域名 | 局域网地址 | 备注 |
|---|---|---|
https://wger.laosu.ml |
http://192.168.0.197:8456 |
wger 的访问地址 |
用 Nginx Proxy Manager 做反代处理;实际访问时,因为老苏没有备案,所以是 https://wger.laosu.ml:444
其中:
192.168.0.197为群晖的IP8456是准备分配给wger的端口

SSL 设置里一般没啥问题的话都是全部勾选

科学上网
Production 模式安装时,会执行 yarn install 安装相关依赖

不确定安装失败会不会有什么问题,有可能是下面这样的

建议将 yarnpkg.com 放入白名单中,来确保安装成功

命令行安装
docker-compose.yml
用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
1 | version: '3' |
.env.txt
另外要下载 .env.txt 文件,并如下修改,其他的暂时默认即可
TIME_ZONE:默认是Europe/Berlin,改为Asia/Shanghai;SITE_URL:默认是http://localhost,改为前面设置的域名https://wger.xxsu.ml:8443;
启用 CSRF_TRUSTED_ORIGINS 和 X_FORWARDED_PROTO_HEADER_SET
只要取消前面的
#即可启用;
CSRF_TRUSTED_ORIGINS:值改为https://wger.laosu.ml:444,http://192.168.0.197:8456,多个域名的话用逗号分隔;X_FORWARDED_PROTO_HEADER_SET:默认的True就可以;

命令
然后执行下面的命令
1 | # 新建文件夹 wger 和 子目录 |
文件夹结构

容器资源占用状况

运行
前面说过,容器启动时会有个 yarn install 的过程,这个时间还是比较长的,当日志中看到 Listening at: http://0.0.0.0:8000 时

就可以浏览器中输入 http://群晖IP:8456 或者 https://wger.laosu.ml:444了,如果一切正常的话,就可以看到主界面了

点 LOGIN

默认的账号:
admin,密码:adminadmin
登录成功后,从左至右依次为 锻炼计划、营养计划、体重

很奇怪,虽然识别了中文,但是居然还是英文界面

而官网 https://wger.de/ 是支持中文的,不知道这是不是 bug

参考文档
wger-project/wger: Self hosted FLOSS fitness/workout, nutrition and weight tracker written with Django
地址:https://github.com/wger-project/wgerwger-project/docker: Production…ish docker-compose image for wger
地址:https://github.com/wger-project/dockerWelcome to wger Workout Manager’s documentation! — wger Workout Manager 2.1 alpha documentation
地址:https://wger.readthedocs.io/en/latest/wger-project/docs: Documentation for wger
地址:https://github.com/wger-project/docswger Workout Manager - Features
地址:https://wger.de/