crawlab-team / crawlab

Distributed web crawler admin platform for spiders management regardless of languages and frameworks. 分布式爬虫管理平台,支持任何语言和框架

Home Page:https://www.crawlab.cn

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SeaweedFS定期出现8888端口无法连接,爬虫的文件也丢失。

jasonz1360 opened this issue · comments

Bug 描述
爬虫代码使用了Git克隆,并且开启了自动拉取,每过2天左右,日志就会出现File not Found。查看Docker日志,显示SeaweedFS的8888端口Connection Refused.

复现步骤
该 Bug 复现步骤如下

  1. 创建一个爬虫,从GIT拉取代码,docker pull crawlabteam/crawlab:latest。
  2. 镜像digest,sha256:4c2e16e8d3fd097bf7094c3a50370498a8fe2a9478f270c64fc70cd13fb5d4af
  3. 设置启动命令,测试正常运行。
  4. 创建定时任务运行爬虫,一切正常。
  5. 过1~2天后,查看爬虫任务日志,找不到Python文件,打开文件Tab,发现文件都消失了。
  6. 查看Crawlab Docker的运行日志,提示 localhost:8888 Connection Refused.
  7. 重启docker。
  8. 文件恢复,SeaweedFS的Server也恢复了。

期望结果
SeaweedFS能正常工作,不要定期出现Connection Refused的问题。

持久化主节点数据了么

持久化主节点数据了么

这个问题解决了,我发现docker版本切换到0.6.3就一切正常了。但是有时候需要git pull两次才能正常拉取代码,否则会第一次文件丢失,第二次pull文件都回来了。

持久化主节点数据了么

这个问题解决了,我发现docker版本切换到0.6.3就一切正常了。但是有时候需要git pull两次才能正常拉取代码,否则会第一次文件丢失,第二次pull文件都回来了。

是crawlab的docker镜像版本切换到0.6.3,不要用最新的镜像。

截屏2024-03-22 09 15 14 问题又来了,基本上只能手动传文件了

怎么同步git都没有用

找到个解决办法,挂载共用目录,这样git只需要sync一次,还省力

举例方法:

volumes:

  • "/opt/.crawlab/master:/root/.crawlab" # 持久化 crawlab 元数据
  • "/opt/crawlab/master:/data" # 持久化 crawlab 数据
  • "/var/crawlab/log:/var/log/crawlab" # 持久化 crawlab 任务日志
  • "/opt/finbase-crawlab:/root/***:rw" # 持久化 crawlab 代码

然后在爬虫的命令里加上root/***开头