什么是 Plant-it ?
Plant-it
是一款园艺伴侣应用程序,可帮助您照顾植物。它不会建议您采取哪些操作,而是旨在记录您正在执行的活动。这是故意的,软件作者坚信,唯一负责知道何时给植物浇水、何时施肥等的人是你(在多个在线资源的帮助下)。Plant-it
可以帮助您记住上次对植物进行处理的时间、您拥有哪些植物、收集植物的照片,并通知您自上次处理植物以来经过的时间。
在群晖上以 Docker 方式安装。
采用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
本文折腾时,前后端镜像
latest
对应的版本为0.0.17
version: "3"
services:
backend:
image: msdeluise/plant-it-backend:latest
container_name: plant-it-backend
restart: unless-stopped
env_file: backend.env.txt
depends_on:
- db
- cache
volumes:
- "./upload:/upload-dir"
ports:
- "3096:8080"
db:
image: mysql:8.0
container_name: plant-it-db
restart: always
env_file: backend.env.txt
volumes:
- "./db:/var/lib/mysql"
cache:
image: redis
container_name: plant-it-cache
restart: always
frontend:
image: msdeluise/plant-it-frontend:latest
container_name: plant-it-frontend
env_file: frontend.env.txt
links:
- backend
ports:
- "3095:3000"
将下面的内容保存为 backend.env.txt
文件,这是后端服务的环境变量设置文件
MYSQL_HOST=db
MYSQL_PORT=3306
MYSQL_USERNAME=root
MYSQL_PSW=root
MYSQL_ROOT_PASSWORD=root
MYSQL_DATABASE=bootdb
JWT_SECRET=f302ce974585f4d89dfabb2d7e927fcca4be800a5568b0ebb569f91f044773df1bd86c3655f330bab5af059ce678f841909b1d59b755840ef978e78b65da4205
JWT_EXP=1
USERS_LIMIT=2 # including the admin account, so <= 0 if undefined, >= 2 if defined
UPLOAD_DIR=/upload-dir
API_PORT=8080
CACHE_TTL=86400
CACHE_HOST=cache
CACHE_PORT=6379
TRAFLE_KEY=
ALLOWED_ORIGINS=*
backend.env.txt
文件中主要的几个参数:
API_PORT
:后端服务的容器端口,不要改;JWT_SECRET
:可以用 Vaultwarden
的密码生成器,也可以用 openssl rand -hex 64
;MYSQL_
:和 MySQL
数据库相关的设置将下面的内容保存为 frontend.env.txt
文件,这是前端页面的环境变量设置文件
PORT=3000
API_URL=http://192.168.0.197:3096/api
WAIT_TIMEOUT=5000
PAGE_SIZE=25
BROWSER=none
frontend.env.txt
文件中主要的几个参数:
PORT
:前端页面的容器端口;API_URL
:后端 API
服务的外部可访问地址,例如http//<群晖主机IP>:<API_PORT>/api
,如果反代了,这里要用域名;然后执行下面的命令
# 新建文件夹 plantit 和 子目录
mkdir -p /volume1/docker/plantit/{db,upload}
# 进入 plantit 目录
cd /volume1/docker/plantit
# 将 docker-compose.yml 、 frontend.env.txt、 backend.env.txt 放入当前目录
# 一键启动
docker-compose up -d
在浏览器中输入 http://群晖IP:3095
就能看到首页
第一次需要通过 create an account
创建账号,之后就可以通过 login
登录,登录成功后的主界面
这个页面风格一看就是主要针对手机的用户的
点下面的放大镜图标,然后在点击 Custom
的图片,来添加自己的植物
Scientific classification
--> 科学分类
Family
--> 科Genus
--> 属Species
--> 种Thumbnail
--> 缩略图Plant
--> 植物
Name
--> 名称Purchased date
--> 购买日期Purchased on
--> 购买于Note
--> 备注这些不是都需要设置,老苏就设置了 Name
,并上传了 Thumbnail
,设置完成点下面的 SAVE PLANT
即可
保存成功就能看到了
重复上面的步骤,添加另外的植物
点屏幕下方正中间的 +
号创建事件
Name
支持下拉,也支持多选
Type
--> 事件类型
Biostimulating
--> 生物刺激Fertilizing
--> 施肥Misting
--> 喷雾Observation
--> 观察Seeding
--> 播种Transplanting
--> 移栽Treatment
--> 处理Watering
--> 浇水Water changing
--> 换水接下来加上时间和备注
点 SAVE EVENT
保存之后
继续填加其他事件,不同的类型有不同的图标和颜色,熟悉之后一目了然
最后看看手机上的效果
MDeLuise/plant-it: 🪴 Self-hosted, open source gardening companion app
地址:https://github.com/MDeLuise/plant-it