本次安装算是坎坷,记录一下。
系统要求
win10必须是专业版。
如果是家庭版,需要升级专业版,升级后需要重新激活。
安装Docker
在控制面板 - 程序 - 添加功能这里勾选hyper-v(不是专业版看不到)
去docker官网下载docker desktop稳定版(docker toolbox是给旧版系统用的,无需下载)
下载完成后安装即可(如果是家庭版在这一步会提示版本不够)
安装完后测试
cmd窗口依次输入如下命令:
> docker version
> docker info
> docker run hello world
注意:
- docker-machine在desktop里是没有的,toolbox里才有。
- 最后一行代码正常是要下载hello world后运行的,但这里会报错:
docker: error pulling image configuration: unexpected EOF.
原因是国外的仓库太慢,改成国内镜像才可以。
修改方法
- 找到用户目录下的.docker文件夹,编辑daemon.json
- 修改:
"registry-mirrors": ["http://hub-mirror.c.163.com"],
- 也可以找找更快的镜像
再次运行docker run hello world
后,正常运行无报错。
安装Portia
在cmd输入docker run -v ~/portia_projects:/app/data/projects:rw -p 9001:9001 scrapinghub/portia
(注意:~/portia_projects:/app/data/project是虚拟环境中的路径,相应文件保存在用户目录下),会开始下载随后安装。
完成后在浏览器输入localhost:9001
,终于看见portia小蜘蛛。
使用Portia
Github有相关说明和文档的链接
- 备注:如果使用github仓库中提示的另一种安装方法,即
docker-compose up
,就不需要安装docker,但会下载一整个ubuntu系统下来,巨慢不说,而且最终的结果可能还是下载失败。
再次使用
- 由于启动方式是一条命令,最好保存为文件,以免下次使用时出错,尤其是路径。
- 如果在cmd中以命令形式启动,ctrl+C退出时不要按两次,否则会出现端口被占用无法再次启动。
附上windows查找端口被占用的方法:
查找使用9001端口的进程:netstat -ano | findstr ":9001"
返回结果的最后一列是PID
通过PID查找进程名称:tasklist | findstr "14436"
(14436为PID)