node.jsibm-cloudetherpad

Error installing Etherpad on Bluemix from CLI


I am trying to deploy Etherpad version 1.5.7 (https://github.com/cloudfoundry/cli/releases) on Bluemix using the Command Line Interface as per the guidelines here - https://www.ng.bluemix.net/docs/starters/install_cli.html

I am getting attached errorsenter image description here

I get this error on executing the command - cf push appname https://github.com/cloundfoundry/node.js-buildpack.git

Any help on how to resolve this error would be helpful. TIA.


Solution

  • The key message in your output is:

    It looks like you're deploying on a stack (currently set to *lucid64*) that's not supported by this buildpack.
    

    You can see the supported stacks in Bluemix and the order in which they are currently set to be used with the command cf stacks. If you run this command, you will probably see that lucid64 is at the top of the list.

    Based on the changelog of the buildpack you've specified, support for the cflinuxfs2 stack was added in v1.2.0 and then later, lucid binaries were removed in v1.4.0. Since lucid support is no longer provided in the buildpack, you will need to specify a different stack to use. This can be accomplished with the -s command line option to specify one of the values that you saw as available from the cf stacks command. Ex.

    cf push EtherPadOnceMore -b https://github.com/cloudfoundry/nodejs-buildpack -s cflinuxfs2
    

    Based on comments below, information here is added as an edit to capture additional steps if using the repo at http://github.com/ether/etherpad-lite/releases for deploying to CloudFoundry/Bluemix:

    1. The buildpack used above expects package.json at the root of what you push. Copy /src/package.json to the root of the project and modify the content to remove the 'dependencies' section to avoid initial module installation
    2. Specify a start command with the -c command line option (to simulate the setup and start scripts). Add -c "npm install src/ && node node_modules/ep_etherpad-lite/node/server.js" to the cf push command.
    3. Remove "ip" and "port" from the settings.json file so that the PORT environment variable will be used by Bluemix runtime (PORT is automatically set for you)