本文主要介绍了如何在Ubuntu-20.04.3系统的虚拟机中,使用docker的方式简单部署Crawlab爬虫管理平台、如何配置和管理平台的一些功能的使用方法
github地址:https://github.com/crawlab-team/crawlab
中文文档地址:https://docs.crawlab.cn/zh/
docker学习文档:https://yeasy.gitbook.io/docker_practice/
下载VMware Workstation虚拟机、Ubuntu-20.04.3系统镜像文件
Ubuntu系统安装Docker教程:https://docs.docker.com/engine/install/ubuntu/
打开命令行模式,输入sudo apt-get update ,注意这里会先要求输入管理员账号的密码,比较坑的是输入的时候看不到光标移动,其实已经输入了,输完密码按回车就可以了
sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
输入以下命令,列出可下载的仓库版本,选择其中一个版本进行安装即可
apt-cache madison docker-ce
例如
sudo apt-get install docker-ce=5:20.10.12~3-0~ubuntu-focal docker-ce-cli=5:20.10.12~3-0~ubuntu-focal containerd.io
用hello-world测试docker是否安装成
sudo docker run hello-world
sudo apt install python3-pip
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
测试docker-compose的版本,上图中显示docker-compose的版本为1.29.2
在/etc/docker/daemon.json中,输入以下内容并保存
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
输入完内容后,按:wq!
保存退出
version: '3.3' services: master: image: tikazyq/crawlab:latest container_name: crawlab-master environment: CRAWLAB_API_ADDRESS: "http://localhost:8000" CRAWLAB_SERVER_MASTER: "Y" CRAWLAB_MONGO_HOST: "mongo" CRAWLAB_REDIS_ADDRESS: "redis" ports: - "8080:8080" # frontend - "8000:8000" # backend depends_on: - mongo - redis worker: image: tikazyq/crawlab:latest container_name: crawlab-worker environment: CRAWLAB_SERVER_MASTER: "N" CRAWLAB_MONGO_HOST: "mongo" CRAWLAB_REDIS_ADDRESS: "redis" depends_on: - mongo - redis mongo: image: mongo:latest restart: always ports: - "27017:27017" redis: image: redis:latest restart: always ports: - "6379:6379"
输入完内容后,按:wq!
保存退出
保存后在当前目录输入
sudo docker-compse up -d
然后等待下载完成
下载完成后,输入 sudo docker ps 可以看到已经启动的四个容器,只有当这四个容器都开启的状态,才能正常打开
成功登录后,出现如图所示,显示docker已经成功部署了Crawlab
重启虚拟机后,直接打开网页会无法运行,如上图所示先运行docker ps后,会发现只有部分(图中只有mongodb、redis容器启动),所以需要启动crawlab主节点和工作节点后,才能正常打开网页。
sudo docker ps -a #查看所有容器,包括没有运行的
找到这两个容器的ID,并如上图所示用docker start 语句去启动容器
此时再运行 docker ps 语句,发现出现4个容器,说明都已经启动成功,就可以成功开启网页了
待更新……
要使用Crawlab实现定时爬虫任务,就要先修改系统的时区
命令行模式输入sudo dpkg-reconfigure tzdata
,选择Asia/Shanghai 即可
具体方法参考这篇文章 https://blog.glemon.cn/post/在Docker里给Crawlab安装Python依赖
在钉钉群里新建机器人,并复制Webhook参数
安全设置可简单定义,包含“任务”这个词的消息通知,这样就能接收到相应的消息了
在Crawlab中粘贴钉钉机器人的Webhook并设置好消息通知除法时机,就可以发送消息了