如何在Heroku上使用PhantomJS 2.5.0 Beta

时间:2017-03-18 18:35:08

标签: ubuntu heroku phantomjs

PhantomJS的2.5.0 beta版本是available for use,但与稳定版本不同,Linux安装有一些依赖关系。我无法在Heroku上获得工作版本。我无法在Google群组或其他地方找到指南或任何真实答案。我该如何进行安装?

1 个答案:

答案 0 :(得分:1)

最终,我能够弄明白!你必须要做几件事......

TL; DR:

  1. heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt
  2. heroku buildpacks:add https://github.com/lookitsatravis/heroku-buildpack-phantomjs.git
  3. cat > Aptfile << EOL webp libhyphen0 https://mirrors.kernel.org/ubuntu/pool/main/g/gcc-5/gcc-5_5.4.1-8ubuntu1_amd64.deb https://mirrors.kernel.org/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.4_amd64.deb EOL
  4. 提交Aptfile,推送到Heroku应用。
  5. 更多信息

    1. 依赖关系:您必须使用Heroku Apt buildpack来安装缺少的依赖项。首先,您需要将buildpack添加到您的应用程序:

      heroku buildpacks:add --index 1 https://github.com/heroku/heroku-buildpack-apt

      接下来,您将在项目根目录中创建一个名为Aptfile的文件。这是我们为PhantomJS 2.5.0 Beta添加缺少的依赖项的地方。 2.5.0引入了webp支持,所以我们需要它。 libhyphen0也是必需的,但我不确定它们是如何使用的。最后,我们使用gcc-5和最新的libstdc++6。内容应如下所示:

    2. webp
      libhyphen0
      https://mirrors.kernel.org/ubuntu/pool/main/g/gcc-5/gcc-5_5.4.1-8ubuntu1_amd64.deb
      https://mirrors.kernel.org/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.4_amd64.deb
      
      1. PhantomJS:接下来我们抓住最新版本的PhantomJS。我创建了forkpopular个PhantomJS buildpack的Bootstrap并更新它以用于2.5.0 beta版。 2.5.0 beta版本为trusty以及xenial构建,因此构建包将检测Heroku堆栈并使用适当的堆栈(尽管cedar-16堆栈在测试时仍处于测试阶段这个帖子)。因此,请将其添加到您的应用中:

        heroku buildpacks:add https://github.com/lookitsatravis/heroku-buildpack-phantomjs.git

      2. 部署:剩下的只是部署!将Aptfile提交到您的仓库,确保已设置构建包,然后推送到Heroku。

      3. 进行了一些试验和错误,但最终我能够启动并运行。希望这有助于其他人,直到最终候选人被释放。