【问题标题】:Node.js cannot find mysql-database serviceNode.js 找不到 mysql-database 服务
【发布时间】:2015-05-18 15:58:40
【问题描述】:

我正在尝试按照以下教程进行操作:

http://www.ibm.com/developerworks/cloud/library/cl-bluemix-nodejs-app/

但是当我推送我的应用时,我看到以下内容:

Using manifest file /mytests/bluemix-node-mysql-upload/manifest.yml

Updating app jea-node-mysql-upload in org jea68@gmail.com / space dev as jea68@gmail.com...
OK

Uploading jea-node-mysql-upload...
Uploading app files from: /mytests/bluemix-node-mysql-upload/app
Uploading 53.6K, 11 files
Done uploading               
OK
FAILED
Could not find service mysql-database to bind to jea-node-mysql-upload

node.js buildpack 有问题还是文档有问题?

【问题讨论】:

    标签: node.js ibm-cloud


    【解决方案1】:

    今天早上我已经能够毫无问题地将应用程序推送到 Node.js。该文档假定用户知道该服务已经创建。本教程的 github repo 中包含的 manifest.yml 定义了一个尚未创建的服务(mysql-database)。运行以下命令创建服务:

    $ cf create-service mysql 100 jea-mysql-node-upload-service
    

    然后修改 manifest.yml 以包含:

    services: 
       - jea-mysql-node-upload-service
    

    或者,由于您已经有一个应用程序,您可以通过运行以下命令将应用程序绑定到服务:

    $ cf bind-service jea-node-mysql-upload jea-mysql-node-upload-service
    $ cf start jea-node-mysql-upload
    

    【讨论】:

    • 感谢@RandalAnders!编辑 manifest.yml 并创建和绑定服务后,我的应用程序启动正常。
    【解决方案2】:

    这看起来像是文档中的错误。如果您查看第 2 部分第 3 部分,它会说使用以下命令创建 mysql 服务:

    cf create-service mysql 100 mysql-node-upload

    这会将服务实例命名为 mysql-node-upload,但是您从 github 克隆的 manifest.yml 文件只包含 mysql-service 的服务名称.它是将应用程序与服务实例链接起来的 manifest.yml 文件。

    选项是将 manifest.yml 文件更改为 mysql 服务实例的正确名称,或者使用 manifest.yml 中的名称重新创建 mysql 服务实例。

    【讨论】:

      猜你喜欢
      • 2014-06-02
      • 2020-09-24
      • 1970-01-01
      • 2013-08-10
      • 1970-01-01
      • 2018-11-30
      • 1970-01-01
      • 2017-05-19
      • 2020-04-14
      相关资源
      最近更新 更多