我想在Heroku上运行xvfb.在我的Mac上,我使用dmg来安装它.有谁会知道如何在Heroku上进行此操作?
我遇到了这些buildpacks(http://github.com/douglasjsellers/heroku-xvfb-buildpack) - 但是按照说明似乎没有解决问题,因为xvfb仍未正确安装.此外,我尝试安装xvfbwrapper(https://pypi.python.org/pypi/xvfbwrapper/0.1.0),但它仍然没有在Heroku上工作(为可能的noob问题道歉).
这是我从Heroku的日志中得到的错误:
2015-02-24T02:09:16.035298+00:00 app[web.6]: cmd=['Xvfb', '-help']
2015-02-24T02:09:16.035564+00:00 app[web.6]: Program install error!
2015-02-24T02:09:16.035302+00:00 app[web.6]: OSError=[Errno 2] No such file or directory
Run Code Online (Sandbox Code Playgroud)
这是代码:
temp = tempfile.mkstemp(suffix='.html')
html = os.fdopen(temp[0], "r+")
html.write(cv)
html.seek(0, 0)
display = Display(visible=0, size=(800, 600))
display.start()
# Open the file on Selenium to load the JavaScript
driver = webdriver.Firefox()
driver.get("file://" + temp[1])
Run Code Online (Sandbox Code Playgroud)
我在研究如何为Cedar-14更新Xvfb时发现了这个问题,并设法使#2正常工作。因此,方法如下:
我使用buildpack-apt进行安装x11-xkb-utils xvfb x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic libxfont1 xvfb。
运行apt buildpack之后,您需要对Xvfb进行一些修补,以使所有工作顺利进行。为此,我使用了自己的run-bash buildpack,但是让您在Heroku编译期间运行bash脚本的所有内容都可以使用。这是我用来修补Xvfb并索引字体的脚本:https : //gist.github.com/fxtentacle/960cdb96ece01add8686
现在,您可以heroku run bash用来检查XAUTHORITY=/tmp/xvfb-run.2NG0xl/Xauthority Xvfb ":99" -screen 0 1280x1024x24 -nolisten tcpXvfb是否正常工作。
我也在想同样的事情。看来你已经发现了这个人的问题了。提到的所有构建包都有 1 年以上的历史,并且不再工作。
两个看似可行的选择:
编译一个在 Heroku 当前操作系统和架构上运行的https://github.com/kenshin23/xvfb-portable-binary的独立 xvfb 二进制文件,并在更新时重建。
将 apt 包管理器中的所有依赖项安装到 ~/.apt 等位置,然后从那里运行,就像最新的buildpack-apt中一样。对我来说,这个选项随着sh: 1: /usr/bin/xkbcomp: not found. Xvfb 正在查找/,而 apt 将命令安装到~/.apt/usr/bin/xkbcomp。还没弄清楚如何告诉 Xvfb 查看~/.apt/.
| 归档时间: |
|
| 查看次数: |
2616 次 |
| 最近记录: |