Mycodo项目Docker容器化部署指南
项目概述
Mycodo是一个开源的自动化环境监测与控制系统,主要用于植物生长环境监控、实验室环境监测等场景。本文将详细介绍如何通过Docker容器化技术部署Mycodo系统。
环境准备
支持平台
Mycodo的Docker部署已验证可在以下平台运行:
- 运行Raspberry Pi OS的树莓派设备
- 运行Ubuntu 20.04(64位)的PC
注意事项
-
端口冲突:Docker化的Mycodo实例不能与本地安装的Mycodo同时运行,因为它们使用相同的端口。在构建前可执行以下命令停止本地服务(仅临时生效,重启后会恢复):
sudo service mycodo stop sudo service mycodoflask stop sudo service nginx stop
-
树莓派Zero特殊处理:如果为Pi Zero构建,需修改
docker/influxdb/Dockerfile
中的基础镜像为FROM mendhak/arm32v6-influxdb
安装步骤
1. 安装Docker引擎
根据操作系统安装Docker Engine,完成后将当前用户加入docker组:
sudo usermod -aG docker $USER
执行后需注销并重新登录使组变更生效。
2. 配置时区
编辑docker-compose.yaml
文件,找到mycodo_daemon
和mycodo_flask
部分下的TZ=America/New_York
,将其改为您的时区(如Asia/Shanghai
)。
3. 构建并启动容器
cd Mycodo
docker compose up --build -d
4. 访问系统
构建成功后,可通过https://127.0.0.1
访问Mycodo系统。
虚拟机部署方案
为保持环境一致性,推荐使用虚拟机部署方案,适用于Windows、Mac或Linux主机。
1. 安装VirtualBox
从官网获取并安装最新版VirtualBox。
2. 准备系统镜像
下载Raspberry Pi OS(64位)桌面版ISO或其他基于Debian的Linux发行版(如Xubuntu)。
3. 创建虚拟机
- 分配至少1024MB内存
- 创建动态分配的VDI虚拟磁盘(建议至少12GB)
- 将下载的ISO挂载到虚拟光驱
4. 安装操作系统
按照标准流程安装Raspbian系统,完成后建议执行系统更新:
sudo apt update && sudo apt upgrade
容器管理命令
重建容器
cd ~/Mycodo
docker compose up --build -d
停止容器
cd ~/Mycodo
docker compose down
启动已构建的容器
cd ~/Mycodo
docker compose up -d
清理容器和镜像
cd ~/Mycodo
docker compose down
docker system prune -a
Grafana监控集成
启用Grafana和Telegraf
- 编辑
docker-compose.yml
,取消注释Grafana和Telegraf相关配置块 - 重新构建容器
Grafana访问地址:http://127.0.0.1:3000
(默认用户admin/密码admin)
配置数据源
- 登录后添加"InfluxDB"数据源
- 配置参数:
- 名称:InfluxDB-mycodo
- URL:http://mycodo_influxdb:8086
- 数据库:mycodo_db
- 用户名:mycodo
- 密码:mmdu77sj3nIoiajjs
添加仪表盘
导入仪表盘ID 928,选择"InfluxDB-mycodo"作为数据源后保存。
注意事项
- 当前Docker支持仍处于实验阶段,功能可能不完整
- 不同版本间的构建可能存在兼容性问题
- 建议定期备份重要数据
通过以上步骤,您可以快速搭建一个完整的Mycodo环境监测系统,并可根据需要扩展监控功能。