by Devin Yang

建立于: 6年前 ( 更新: 6年前 )

文章下方的影片介绍如何使用rendertron解决Polymer SEO优化的问题。
在我fork的source中,已调整支持中文环境。
并且还添加了pdf的API接口,也可以拿来转pdf。

原始Rendertron GitHub连结
https://github.com/GoogleChrome/rendertron

我fork的source已调整中文环境,可以参考我的GitHub上的设置.
另外,我也调整了source加上了pdf的API,所以使用我的source去build image,会多一个pdf的按钮。
https://github.com/DevinY/rendertron
 

关於'ECONNREFUSED'的错误:

在您的内核缺少用户命名空间支持或尝试访问容器中的服务时,会碰到ECONNREFUSED错误时,
以下两种推荐方法可以解决此问题:
  1. [建议] - 使用 Jessie Frazelle' seccomp profile 及  -security-opt  标记
  2. 利用  --cap-add SYS_ADMIN  标记
一、透过wget下载Jessie Frazelle的Chrome浏览器的seccomp分配文档(chrome.json)启动带有内置映像的容器:
wget https://raw.githubusercontent.com/jfrazelle/dotfiles/master/etc/docker/seccomp/chrome.json -O ~/chrome.json
docker run -it -p 8080:8080 --security-opt seccomp=$HOME/chrome.json --name rendertron-container rendertron


二、使用SYS_ADMIN创建及运行的映像档的容器:
docker run -it -p 8080:8080 --cap-add SYS_ADMIN --name rendertron-container rendertron

关於中文支持

您可能有发现了,原始的docker环境中build出来的image是英文的。
所以透过API抓图时也是英文的(测试网址):
https://render-tron.appspot.com/screenshot/https://www.google.com

如果您不想自己build image
可以直接使用我先build好的image,
运行方式如下:
一、先下载chrome.json到自己host的家目录(只需做一次,如果您使用Mac系统未安装wget,请改用其他方式下载该json档):
wget https://raw.githubusercontent.com/jfrazelle/dotfiles/master/etc/docker/seccomp/chrome.json -O ~/chrome.json

二、创建container,这里我加了--rm的参数,停止时,我要把container移掉,试试抓图的功能,就会是中文的罗。
docker run --rm -it -p 8080:8080 --security-opt seccomp=$HOME/chrome.json --name rendertron-container deviny/rendertron

注:
如果使用 npm install 的方式安装,并使用 npm start 运行,
您的系统环境是中文的即可显示中文。
npm start
> bot-render@1.0.0 start /Users/devin/rendertron
> node src/main.js
Chrome launched with debugging on port 54791
Listening on port 3000


关於rendertron如何实际的运用,详细介绍,请看下方影片说明:

Tags: docker polymer seo

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


docker,phpenv

用光了Docker IPv4 address pool问题解法

可能在旧版的docker环境,使用Docker compose启动容器时,会碰过下方的错误: Error response from daemon: could not find an available, non-overlapping IPv4 address pool among the defaults to assign to the network这其实这是default-address-pools用光的症状,有些环境,docker-compose默认会使用Class B的私有网络。172段的私有IP是有范围的,从172.16.0.0到172.31.255.255。也就是说,当我们起动一个docker-compose的Project,就会吃掉一个Class B的私有段,非常豪迈,

docker

关於GCE上FPM image如何变更owner

CCC网站升级php 7.2.0罗,有Docker的环境,轻松搞定php升级, 在Linux上Image的变更还是有些注意事项您应该了解。 如果您跟我一样透过docker将D-Laravel安装於Linux的系统上,当您变更不同的image时, 或许您可能会碰到,疑!怎么composer没有权限写数据夹的错误。 directory is not writable

docker

Docker防毒攻略

最近刚看玩延禧攻略,就想来介绍个MacOS扫毒攻略。 这篇文章,教大家用如何用Docker搞定MacOS扫毒。 简单介绍,我们如何透过docker使用防毒软体扫毒。 这里假定目前我的目录是在我的家目录中,所以${PWD}就是目前的所在目录,会被挂载到container内的scan数据夹。 所以,使用clamscan -r /scan/,时就能扫描所有的挡案罗,加上-r的参数会使用递归的方式一层一层的进入子目录扫描。