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, api

Swagger介绍

最好的API是使用Swagger工具创建的, 本文介绍如何用docker来运行swagger-ui及editor,让我们创建出可测试的API文档。 在docker的环境,我们可以很轻松的启动swagger编辑器及使用者接口。

certbot,docker,ftp

curlftpfs介绍及手动证书申请

情境分享,设想您有WebHosting,他只提供FTP连线,然后您想手动的方式申请证书。在本篇分享我如何使用Docker安装curlftpfs,并且挂载远程主机FTP数据夹,然后在容器内运行certbot申请SSL证书。撇除证书申请不说,我初次发觉到curlftpfs这个命令时,觉的满有意思的,特别是如果你用的是MacOS用户,手边没有一个满意的FTP软体时。您跟我一样喜欢在命令行上打滚,或许您应该也会喜欢这个命令。🤭

docker laravel

闲聊D-Laravel的console命令

D-Laravel的console命令让我们快速的了解他运行了什么。如果使用docker-compose是怎么运行的呢? 我们来看看吧。