【发布时间】:2019-09-30 16:22:52
【问题描述】:
我正在尝试为我的应用创建一个蒸汽 API。在我的本地机器(Mac OS)上,我所有的代码和我的 API 都运行良好,但是当我将它上传到我的 ubuntu 服务器时它崩溃了......
我已经做了以下代码:
vapor clean
vapor update
vapor build
这些命令都不会返回任何类型的错误,但是当我运行 vapor 时会发生以下情况:
root@rt-server:/usr/local/uprising/server# vapor run
Running server ...
root@rt-server:/usr/local/uprising/server#
搜索了一下并尝试解决我的问题,我发现如果我评论以下代码(configure.swift),我可以让蒸汽运行:
// Register Mongo Client
let client = try! MongoClient()
let db = client.db("myDB")
let collection:MongoCollection<Document>
do {
collection = try db.createCollection("myCollection")
} catch {
collection = db.collection("myCollection")
}
// Create an unique index on timestamp
// because I expect only one daily
let indexOptions = IndexOptions(name: "timestamp", unique: true)
let model = IndexModel(keys: [ "timestamp": 1] , options: indexOptions)
do {
try collection.createIndex(model)
} catch {
print("Index already exist!")
}
services.register(client)
我有一些问题可能会帮助我弄清楚如何解决我的问题:
如何在 ubuntu 上使用命令行调试 vapor?在我的 mac 中,当我使用 xcode 时它很容易......
我可以测试我的 MongoDB C 驱动程序是否安装正确吗?
有谁知道我做错了什么?它在我的 Mac 上完美运行...
对不起,我的英语不好...如果有人知道如何帮助我,我将不胜感激!
【问题讨论】:
-
调试:swift-lldb ...注意每个平台的构建状态。
标签: swift mongodb ubuntu vapor