by Devin Yang

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

文章下方的影片介绍如何使用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

移除所有docker containers及docker images的命令

有时在自己的环境中试了一堆container或是images,如何全部移掉系统中所有的images及container 呢?这些命令提供给大家参考..

docker,laravel

用Docker创建Lravel开发环境超简单

Laravel 5.5系统环境您准备好了吗? laravel/framework 5.5.x-dev requires php >=7.0 -> your PHP version (5.6.30) does not satisfy that requirement. 这篇文章描述如何使用Docker创建Laravel的开发环境。 有了简单到爆炸的D-Laravel简易bash, 不要在说我无法创建Laravel的开发环境了。

laravel docker

关於D-Laravel的项目模式

如果您是新使用者,建议您改用我的最新环境phpenv。https://github.com/DevinY/phpenv