Generic Reader Utility 是一个基于Python的通用读取工具,设计用于定期执行数据读取、诊断和系统清理任务。该工具通过定时任务自动化处理流程,并提供详细的日志记录功能。
执行安装脚本
bash./setup.sh
登录 Docker
bashdocker login
将 Compose 文件复制到目标服务器
拉取镜像
bashdocker-compose pull
启动服务
bashdocker-compose up -d
验证容器状态
bashdocker ps
进入容器
bashdocker exec -it {container_id} /bin/bash
查看定时任务
bashcrontabs -l
bash# 安装虚拟环境工具 pip3 install virtualenv # 创建虚拟环境 python3 -m venv venv # 激活虚拟环境 source venv/bin/activate # 安装依赖包 pip install -r requirements.txt
bash# 进入源代码目录 cd src # 运行测试 python -m manager.test_reader
bash# 主目录结构 mkdir /ava_write/logs mkdir /ava_write/outgoing mkdir /ava_write/uploaded mkdir /ava_write/archive # 控制目录结构 mkdir /ava_write/controls mkdir /ava_write/controls/logs mkdir /ava_write/controls/outgoing mkdir /ava_write/controls/uploaded mkdir /ava_write/controls/archive
/ava_write/logs: 主日志目录/ava_write/outgoing: 待传出文件目录/ava_write/uploaded: 已上传文件目录/ava_write/archive: 归档文件目录/ava_write/controls: 控制相关文件目录启动应用程序:
bashcd ava_iec_reader source venv/bin/activate cd src python -m manager.execute
编辑当前用户的crontab:
bashcrontab -e
添加以下内容:
bash# 每5分钟执行一次数据读取(工作日5:00-19:00) */5 5-19 * * * cd /home/pi/ava_iec_reader/src/ && /home/pi/ava_iec_reader/venv/bin/python -m manager.execute >> /ava_write/logs/ava_reader.log 2>&1 # 每10分钟执行一次系统诊断 */10 * * * * cd /home/pi/ava_iec_reader/src/ && /home/pi/ava_iec_reader/venv/bin/python -m diagnosis.diagnosis >> /ava_write/logs/diagnosis.log 2>&1 # 每天凌晨2点执行一次系统清理 0 2 * * * cd /home/pi/ava_iec_reader/src/ && /home/pi/ava_iec_reader/venv/bin/python -m cleanup.cleanup >> /ava_write/logs/cleanup.log 2>&1
编辑sudo级别的crontab:
bashsudo crontab -e
添加以下内容:
bash# 每30分钟执行一次连接性检查(工作日5:00-19:00) */30 5-19 * * * cd /home/pi/ava_iec_reader/src/ && /home/pi/ava_iec_reader/venv/bin/python -m diagnosis.connectivity >> /ava_write/logs/connectivity.log 2>&1
bashsudo nano /etc/udev/rules.d/95-serialdaemon.rules
添加以下内容:
KERNEL=="ttyUSB0", TAG+="systemd", ENV{SYSTEMD_WANTS}="gen_env.service"
bashsudo nano /etc/systemd/system/gen_env.service
添加以下内容:
ini[Unit] Description=.env file generator After=remote-fs.target After=syslog.target [Service] WorkingDirectory=/home/pi/ava_iec_reader/src ExecStart=/home/pi/ava_iec_reader/venv/bin/python3 -m gen_env.gen_env
启用并启动服务:
bashsudo systemctl enable gen_env.service sudo systemctl start gen_env.service
所有日志文件均保存在 /ava_write/logs 目录下,主要日志文件包括:
ava_reader.log: 主应用程序日志diagnosis.log: 系统诊断日志cleanup.log: 清理操作日志connectivity.log: 连接性检查日志日志文件可通过标准文本查看工具查看:
bashtail -f /ava_write/logs/ava_reader.log
bashdocker ps # 查看运行中的容器 docker logs {container_id} # 查看容器日志
bashcrontab -l # 查看用户级定时任务 sudo crontab -l # 查看系统级定时任务
确保应用程序对所需目录具有读写权限:
bashls -la /ava_write/
bashsudo systemctl status gen_env.service
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429