设置Vapor和MongoKitten

时间:2017-01-29 11:01:25

标签: swift mongodb heroku atlassian-sourcetree vapor

在localhost上成功部署后(0.0.0.0:8080) 虽然我把代码推送到了heroku的git, 我在heroku上收到错误。

Cannot connect to MongoDB
Process exited with status 0

我在内部包文件中添加了

dependencies: [
        .Package(url: "https://github.com/vapor/vapor.git", majorVersion: 1, minor: 1),
        .Package(url: "https://github.com/OpenKitten/MongoKitten.git", majorVersion: 3)
    ],

在main.swift内部,程序存在于此行

let mongoDatabase = try Database(mongoURL: "mongodb://localhost/mydatabase")

附加信息:我相信在提交时,SourceTree会遗漏一些东西。 因为在不同的机器上结账后相同的代码也无法正常工作。代码编译完美。

1 个答案:

答案 0 :(得分:2)

这里有一个关于如何获取postgres的DATABASE_URL的信息,但它对于mongo DB来说是相同的:

heroku addons:create heroku-postgresql:hobby-dev
经过一些准备工作后

heroku config

那里有网址

您在Procfile(使用vapor init创建)中的

可以添加数据库网址:

我们的文本编辑器并将其更新为如下所示。

web: App --env=production --workdir="./"
web: App --env=production --workdir=./ --config:servers.default.port=$PORT --config:postgresql.url=$DATABASE_URL

这是我们添加--config:postgresql.url=$DATABASE_URL

的数据库网址

保存Procfile并输入git push heroku master

一段时间后它应该可以工作。

您应该将名称postgresql.url更改为您的mongo db confog名称(取决于您使用的mongo插件)