2

遵循 dotcloud 上 perl 服务的基本设置示例(“ramen app example”)时,当我在 dotcloud CLI 上执行“dotcloud push”然后“dotcloud open”时,我不断收到“uWSGI error Perl application not found”。使用新生成的 URL 似乎代码推送是成功的,但是当我打开 URL 时我不断收到错误消息。这是我第一次部署 perl Dancer 应用程序。关于如何解决这个问题的任何想法?谢谢。

我在linux终端上采取的步骤:

1. 环境设置

mkdir ramen-on-dotcloud
cd ramen-on-dotcloud
dotcloud create ramen


2.创建构建文件“dotcloud.yml”
并将其放在根目录“ramen-on-dotcloud”

www:
  type: perl
  approot: helloperl
  requirements:
    - App::cpanminus

3. 生成一个示例 PSGI 应用程序(perl Dancer)

cpanm Dancer
cd ramen-on-dotcloud
dancer -a helloperl
echo "require 'bin/app.pl';" > helloperl/app.psgi


4.通过编辑makefile.pl并在dependencis中添加Plack来添加对PSGI应用程序的支持。

PREREQ_PM => {
    'Test::More'  =>  0,
    'YAML'        =>  0,
    'Dancer'      =>  1.3113,
    'Plack'       =>  0,
},


5. 推送应用到点云

dotcloud push


6.此时代码推送成功,所以我打开生成的URL

dotcloud open


然后我得到这个错误......

uWSGI 错误

找不到 Perl 应用程序

有什么建议么?谢谢!

4

1 回答 1

3

运行 Step#3 会即时生成 Dancer 项目所需的文件。我想知道是否可能是这一步导致了您所看到的问题。这可能与cpanm Dancer本地安装方式有关。

我已经运行了所有步骤并在此处上传了工作项目:https ://github.com/johncosta/example-dancer-on-dotcloud

git clone https://github.com/johncosta/example-dancer-on-dotcloud
dotcloud create dancer
dotcloud push dancer

这会产生更好的结果吗?

于 2013-08-09T20:59:24.523 回答