1

我正在使用 nginx + unicorn + capistrano 在服务器上部署我的应用程序。我的数据库是 sqlite,因为我只有一张小桌子。我的 deploy.rb 配置在这里deploy.rb

当我进行cap deploy:setup然后cap deploy:cold应用程序工作正常。当我进行一些更改然后提交并运行 cap deploy 我有

**We're sorry, but something went wrong.**

在 production.rb 我有以下错误

Processing by DomainsController#index as */*
Completed 500 Internal Server Error in 1ms

ActiveRecord::StatementInvalid (Could not find table 'domains'):
app/controllers/domains_controller.rb:8:in `index'

我不明白为什么我看到这个错误?如何检查我错在哪里?

4

1 回答 1

1

每次部署都会在您的服务器上创建名为 current 的新目录,并且由于您的数据库不在源代码控制版本系统中(并且不应该),因此每次部署后都会丢失。您需要将 sqlite 数据库放入共享文件夹并在部署中对其进行符号链接。

于 2012-12-23T20:19:55.500 回答