将FFMPEG添加到Bluemix Node.JS buildpack

时间:2015-05-17 21:27:56

标签: cloudfoundry ibm-cloud

看起来Bluemix不包含FFMPEG作为标准运行时的一部分。 但是,我们希望在我们的应用程序中使用FFMPEG。

这样做的“正确”方法似乎是使用自定义构建包。

因此,有几个问题:

  1. 我们应该为此分配一个Bluemix buildpack,还是建议练习分叉CloudFoundry buildpack?
  2. 如果我们分叉CloudFoundry构建包,我们会丢失Bluemix自定义吗?
  3. 是否有一个可公开访问的存储库,Bluemix buildpacks可以从中分叉?

3 个答案:

答案 0 :(得分:3)

我最近将第三方C库集成到标准NodeJS buildpack中。您可以在此处找到有助于您建立自己的详细信息: http://jamesthom.as/blog/2015/03/04/cloud-foundry-custom-buildpacks/

我从外部仓库分叉标准的NodeJS buildpack。

答案 1 :(得分:3)

有一个用于FFMPEG here的Heroku buildpack,它可以在Bluemix上运行。如buildpack的描述中所述,您需要将此与另一个buildpack相结合才能获得运行时。另一个选择是将此buildpack中完成的内容添加到forked buildpack中(所有buildpacks都具有相同的bin / detect,bin / compile,bin / release脚本)。

另一个选项(我更喜欢)是不分叉构建包,而是添加ffmpeg作为依赖项(因为它就是这样)。有一个名为easy-ffmpeg的npm包,其中包含Windows,Mac和Linux上ffmpeg的二进制文件(您可以使用Bluemix的Linux二进制文件)。所以你需要做的就是在你的package.js中为你的node.js app添加它作为依赖项。

答案 2 :(得分:0)

我们遇到了同样的问题,所以我们分叉了标准节点构建包并添加了FFMPEG二进制文件。

您可以将其用作构建包:https://github.com/BlueChasm/nodejs-buildpack-ffmpeg.git

只需将以下行添加到manifest.yml文件中:

buildpack: https://github.com/BlueChasm/nodejs-buildpack.git

以下是一些信息:http://blog.bluechasm.com/post/142413412641/installing-ffmpeg-on-a-bluemix-instance-using-a