锻炼管理器wger的安装

在这里插入图片描述

本文是 20212 月完成的,最近因为工作比较忙,就把这些老文章翻出来,但为了发表,老苏差不多又重写了一遍。

因为当时跑的是 wger/apache ,现在新的 wger/apache 版本在老苏的机器上,会遇到 AH00141: Could not initialize random number generator 错误。

什么是 wger ?

wger 是一个用 Django 编写的锻炼管理器,是一个免费的开源 Web应用程序,可以帮助您管理个人锻炼,体重和饮食计划,还可以用作简单的健身房管理实用程序。它还提供了 REST API ,可轻松与其他项目和工具集成。

前期准备

反向代理

如果要从公网访问,需要先要准备好域名,当然这一步不是必须的,只在局域网使用的话也是可以的

域名局域网地址备注
https://wger.laosu.mlhttp://192.168.0.197:8456wger 的访问地址

Nginx Proxy Manager 做反代处理;实际访问时,因为老苏没有备案,所以是 https://wger.laosu.ml:444

其中:

  • 192.168.0.197 为群晖的 IP
  • 8456 是准备分配给 wger 的端口

在这里插入图片描述

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

在这里插入图片描述

科学上网

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

在这里插入图片描述

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

在这里插入图片描述

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

在这里插入图片描述

命令行安装

docker-compose.yml

docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  web:
    image: wger/server:latest
    container_name: wger_server
    restart: unless-stopped
    env_file:
      - ./.env.txt
    volumes:
      - ./static:/home/wger/static
      - ./media:/home/wger/media
    #ports:
    #  - "8000"
    healthcheck:
      test: wget --no-verbose --tries=1 --spider http://localhost:8000
      interval: 10s
      timeout: 5s
      retries: 5
    depends_on:
      db:
        condition: service_healthy
      cache:
        condition: service_healthy

  nginx:
    image: nginx
    container_name: wger_nginx
    restart: unless-stopped
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/default.conf
      - ./static:/wger/static:ro
      - ./media:/wger/media:ro
    ports:
      - 8456:80
    healthcheck:
      test: service nginx status
      interval: 10s
      timeout: 5s
      retries: 5
    depends_on:
      - web

  db:
    image: postgres:14
    container_name: wger_db
    restart: unless-stopped
    environment:
      - POSTGRES_USER=wger
      - POSTGRES_PASSWORD=wger
      - POSTGRES_DB=wger
    volumes:
      - ./data:/var/lib/postgresql/data/
    #expose:
    #  - 5432
    healthcheck:
      test: pg_isready -U wger
      interval: 10s
      timeout: 5s
      retries: 5

  cache:
    image: redis:6.2
    container_name: wger_cache
    restart: unless-stopped
    #expose:
    #  - 6379
    healthcheck:
      test: redis-cli ping
      interval: 10s
      timeout: 5s
      retries: 5

.env.txt

另外要下载 .env.txt 文件,并如下修改,其他的暂时默认即可

  • TIME_ZONE:默认是 Europe/Berlin,改为 Asia/Shanghai
  • SITE_URL:默认是 http://localhost,改为前面设置的域名 https://wger.xxsu.ml:8443

启用 CSRF_TRUSTED_ORIGINSX_FORWARDED_PROTO_HEADER_SET

只要取消前面的 # 即可启用;

  • CSRF_TRUSTED_ORIGINS:值改为 https://wger.laosu.ml:444,http://192.168.0.197:8456,多个域名的话用逗号分隔;
  • X_FORWARDED_PROTO_HEADER_SET:默认的 True 就可以;

在这里插入图片描述

命令

然后执行下面的命令

# 新建文件夹 wger 和 子目录
mkdir -p /volume2/docker/wger/{data,media,static}

# 进入 wger 目录
cd /volume2/docker/wger

# 修改目录权限
chmod 777 static

# 下载 .env.txt 文件
curl -sSL https://raw.githubusercontent.com/wger-project/docker/master/config/prod.env -o .env.txt

## 下不动就加个代理试试
curl -sSL https://ghproxy.com/raw.githubusercontent.com/wger-project/docker/master/config/prod.env -o .env.txt

# 下载 nginx.conf
curl -sSL https://raw.githubusercontent.com/wger-project/docker/master/config/nginx.conf -o nginx.conf

## 下不动就加个代理试试
curl -sSL https://ghproxy.com/raw.githubusercontent.com/wger-project/docker/master/config/nginx.conf -o nginx.conf

# 修改 .env.txt 文件中的时区设置

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

文件夹结构

在这里插入图片描述

容器资源占用状况

在这里插入图片描述

运行

前面说过,容器启动时会有个 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/wger

wger-project/docker: Production…ish docker-compose image for wger
地址:https://github.com/wger-project/docker

Welcome 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/docs

wger Workout Manager - Features
地址:https://wger.de/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨浦老苏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值