【Docker项目实战】使用Docker部署Grocy家庭库存管理系统
【Docker项目实战】使用Docker部署Grocy家庭库存管理系统
一、Grocy介绍
1.1 Grocy简介
Grocy
提供了一个全面的解决方案来管理你的家庭——从食品杂货、膳食计划到家务管理和购物清单等。它的设计旨在简化日常生活中的各种任务,使你能够轻松跟踪家里的库存、制定计划并优化资源使用。Grocy 适合那些希望更好地组织自己生活的人们,无论是个人还是家庭用户都可以从中受益。
1.2 Grocy主要特点
- 杂货管理:追踪家里所有食品杂货的库存,包括数量、保质期以及存放位置。
- 膳食计划:根据现有库存为一周或更长时间制定膳食计划,帮助减少浪费。
- 购物清单:自动或手动创建购物清单,确保只购买需要的东西。
- 家务管理:安排和追踪家务活动,如清洁和维护工作,确保家庭运作顺畅。
- 财务概览(实验性功能):提供对家庭财务状况的概览,帮助控制支出。
- 条形码扫描:支持使用条形码快速添加或查找产品,使得管理库存更加便捷。
- 自定义规则和提醒:可以根据个人需求设置特定规则和提醒,比如当某种物品低于一定数量时提醒补充库存。
二、本次实践规划
2.1 本地环境规划
本次实践为个人测试环境,操作系统版本为|Ubuntu 22.04.1。
hostname | IP地址 | 操作系统版本 | Docker版本 | 部署项目 |
---|---|---|---|---|
jeven01 | 192.168.3.88 | Ubuntu 22.04.1 LTS | 27.1.1 | Grocy |
2.2 本次实践介绍
1.本次实践部署环境为个人测试环境,生产环境请谨慎;
2.在Docker环境下部署Grocy家庭库存管理系统。
三、本地环境检查
3.1 检查Docker服务状态
检查Docker服务是否正常运行,确保Docker正常运行。
root@jeven01:~# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2025-04-20 07:26:39 UTC; 4 days ago
TriggeredBy: ● docker.socket
Docs: https://docs.docker.com
Main PID: 1063 (dockerd)
Tasks: 30
Memory: 1.7G
CPU: 3min 9.728s
CGroup: /system.slice/docker.service
├─1063 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
3.2 检查Docker版本
检查Docker版本
root@jeven01:~# docker -v
Docker version 27.1.1, build 6312585
3.3 检查docker compose 版本
检查Docker compose版本,确保2.0以上版本。
root@jeven01:~# docker compose version
Docker Compose version v2.19.1
四、拉取镜像
拉取Grocy镜像,拉取相关镜像如下所示:
root@jeven01:/data/grocy# docker pull linuxserver/grocy:latest
latest: Pulling from linuxserver/grocy
Digest: sha256:3fdf0e26724a4818c139644b387f9d0d848ab33cfa4bdca115382ebf127504fd
Status: Image is up to date for linuxserver/grocy:latest
docker.io/linuxserver/grocy:latest
五、部署Grocy服务
5.1 创建部署目录
- 创建部署目录
mkdir -p /data/grocy/data && cd /data/grocy
5.2 编辑部署文件
- 想要在直接使用命令部署,可参考如下:
docker run -d \
--restart unless-stopped \
--name=grocy \
-p 9200:80 \
-v $(pwd)/data:/config \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Shanghai \
linuxserver/grocy:latest
在`部署目录下,创建docker-compose.yaml文件,如下所示:
vim docker-compose.yaml
version: "3"
services:
grocy:
image: linuxserver/grocy:latest
container_name: grocy
restart: unless-stopped
volumes:
- ./data:/config
ports:
- 9200:80
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
5.3 创建Grocy容器
执行以下命令,创建Grocy容器。
docker compose up -d
5.4 查看Grocy容器状态
检查建Grocy容器运行状态,确保建Grocy容器正常启动。
root@jeven01:/data/grocy# docker compose ps
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS
grocy linuxserver/grocy:latest "/init" grocy 9 minutes ago Up 9 minutes 443/tcp, 0.0.0.0:9200->80/tcp, :::9200->80/tcp
5.5 查看Grocy容器日志
- 查看Grocy容器日志
docker compose logs
六、访问Grocy服务
6.1 访问初始页
浏览器地址: https://<个人的服务器IP>:,访问Grocy的初始页。如果无法访问,请确保宿主机的防火墙已关闭或已放行相关端口,对于云服务器还需配置相应的安全组规则。
6.2 登录Grocy首页
默认设置的登录账号密码为admin/admin,直接登录即可。
七、基本使用
7.1 设置中文语言
系统默认为英文语言,我们可以通过系统设置——用户设置——语言——简体中文,确认即可。
7.2 添加产品
在管理主数据中,选择添加产品,填写产品相关信息,保存即可。
7.3 库存设置
点击库存管理,选择产品后,填写以下相关信息,确认。
- 首页预览效果如下:
7.4 APP配合使用
官方没有提供移动端APP使用,可以使用第三方开发的APP配合使用,日常使用起来更为方便,可自行研究与使用。
地址:
源代码:https://github.com/patzly/grocy-android
客户端下载:https://f-droid.org/packages/xyz.zedler.patrick.grocy/
八、总结
通过本次Docker项目实战,我们学习了如何使用Docker部署Grocy家庭库存管理系统,体验了从环境准备、镜像拉取、服务部署到应用配置的完整流程。Grocy的强大功能和灵活性使其成为管理家庭库存的理想选择,而Docker的使用则极大简化了部署过程,使得任何人都能轻松搭建属于自己的家庭管理系统。这次实践不仅增强了我们的Docker技能,也让我们发现了Grocy在日常生活中的潜在价值。
- 点赞
- 收藏
- 关注作者
评论(0)