Ruby 在 Rails 上部署 Capistrano sqlite 数据库无架构
Ruby on Rails deploy Capistrano sqlite db no schema
当尝试使用 Capistrano 在 Rails 应用程序上将 Ruby 部署到 Ubuntu 14 服务器时,我遇到了一个问题,sqlite3 数据库文件总是被创建,但没有架构加载时,Capistrano 部署总是失败。当我检查远程服务器上的目标数据库文件夹时,创建了 *.sqlite3 数据库文件,但它绝对是空的。我试图添加 capistrano 任务来加载模式,但它并没有解决问题。
desc 'Initial Deploy'
task :initial do
on roles(:app) do
execute 'cd #{current_path}; rake db:schema:load'
before 'deploy:restart', 'puma:start'
invoke 'deploy'
end
end
我也在本地注意到,当调用 rake db:setup
数据库 模式未加载 ,我必须手动调用 rake db:schema:load
到 运行 本地应用程序,但我如何在 Capistrano 部署范围内完成它?
使用 Capistrano,数据库的初始设置是手动的。
这是讨论解决此问题的选项的票证:https://github.com/capistrano/rails/issues/118
当尝试使用 Capistrano 在 Rails 应用程序上将 Ruby 部署到 Ubuntu 14 服务器时,我遇到了一个问题,sqlite3 数据库文件总是被创建,但没有架构加载时,Capistrano 部署总是失败。当我检查远程服务器上的目标数据库文件夹时,创建了 *.sqlite3 数据库文件,但它绝对是空的。我试图添加 capistrano 任务来加载模式,但它并没有解决问题。
desc 'Initial Deploy'
task :initial do
on roles(:app) do
execute 'cd #{current_path}; rake db:schema:load'
before 'deploy:restart', 'puma:start'
invoke 'deploy'
end
end
我也在本地注意到,当调用 rake db:setup
数据库 模式未加载 ,我必须手动调用 rake db:schema:load
到 运行 本地应用程序,但我如何在 Capistrano 部署范围内完成它?
使用 Capistrano,数据库的初始设置是手动的。
这是讨论解决此问题的选项的票证:https://github.com/capistrano/rails/issues/118