阅读文本大概需要3分钟。
分布式爬虫管理平台Crawlab发现挺不错,但是官方文档中涉及二次开发的环境启动章节比较模糊。
最先需要的是克隆代码
https://github.com/nickliqian/crawlab
前端部署
1、安装node(网上node下载即可)
2、安装基本依赖
cmd窗口使用administrator用户运行执行:
npm install --global --production windows-build-tools
npm install -g node-gyp
npm install -g yarn
npm install node-sass
3、编译代码
这里的构建是指前端构建。在构建之前,我们需要配置一下前端的部署环境变量。
打开 ./frontend/.env.production,内容如下。
NODE_ENV='production'
VUE_APP_BASE_URL=/api
VUE_APP_CRAWLAB_BASE_URL=https://api.crawlab.cn
VUE_APP_DOC_URL=http://docs.crawlab.cn
cd C:\Users\2230\Desktop\crawlab-master\frontend
yarn install
启动:
npm run serve #启动
npm run build:dev #开发环境构建
npm run build:prod #生产环境构建
4、验证结果
访问页面:http://localhost:8080/#/login
附:编译遇到的一些问题
- gyp verb `which` failed Error: not found: python2
这个问题可以忽略直接执行如下命令,可以自动安装python2软件。
npm install -global -production windows-build-tools
- C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe` failed with exit code: 1
管理员身份运行cmd
npm install -global -production windows-build-tools
后端编译
1、基本软件安装
- 下载go 1.12+ 版本( https://studygolang.com/dl )
设置go到环境变量PATH中
- 下载redis
https://github.com/MicrosoftArchive/redis/releases
https://pan.baidu.com/s/17NYqI-UTAsynmRpHklX4Ig 提取码:nh5p
- 下载MongoDB
http://dl.mongodb.org/dl/win32/x86_64
启动(可以在PATH中设置MongoDB的bin目录)
mongod.exe
--dbpath=C:\Users\2230\Desktop\crawlab\mongodb-win32-x86_64-2012plus-4.2.7\db
--logpath=C:\Users\2230\Desktop\crawlab\mongodb-win32-x86_64-2012plus-4.2.7\mongod.log
2、修改配置
主要修改redis和MongoDB的服务器地址(根据具体情况修改):
C:\Users\2230\Desktop\crawlab-master\conf\config.yaml
3、编译代码
设置一下 Go Module 的代理,将环境变量 GOPROXY 设置为 https://goproxy.cn。如果是 Linux 或 Mac,可以执行如下命令:
export GOPROXY=https://goproxy.cn
windows系统启动cmd,执行如下:
set GOPROXY=https://goproxy.cn
开始编译代码执行如下命令:
cd C:\Users\2230\Desktop\crawlab-master\backend
go install
在执行go install时会出现如下错误,可能window系统不支持这些类库,先直接注释
注释后在执行 go install ;这时直接注释这个引入的模块即可编译成功
执行如下命令构建exe
go build
生产如图exe文件
以上是构建项目。如果是启动项目,可以直接使用命令:
cd C:\Users\2230\Desktop\crawlab-master\backend
go run main.go
另外也可以执行go build生产的crawlab.exe文件;在cmd命令行执行:
4、验证结果
访问:http://localhost:8080/#/login
输入账号密码:admin / admin
看起来功能还是比较强大的,正在研究怎样使用。如果大家有兴趣的一起分享、学习。
☆
关注我
每天进步一点点