Я пытаюсь развернуть мое приложение rails с capistrano, но у меня проблемы с моими миграциями. В моей среде разработки я просто использую sqlite в качестве моей базы данных, но на моем рабочем сервере я использую MySQL.Запуск миграции на сервере при развертывании с помощью capistrano
Проблема в том, что я хочу, чтобы миграции выполнялись с моего сервера, а не с моей локальной машины, поскольку я не могу подключиться к своей базе данных из удаленного места.
Установка моего сервера: Блок debian работает с ngnix, пассажиром, mysql и репозиторием git.
Что такое самый простой способ сделать это?
обновление:
Вот мой развернуть сценарий: (я заменил мой фактический домен с example.com)
set :application, "example.com" set :domain, "example.com" set :scm, :git set :repository, "[email protected]com:project.git" set :use_sudo, false set :deploy_to, "/var/www/example.com" role :web, domain role :app, domain role :db, "localhost", :primary => true after "deploy", "deploy:migrate"
Когда я запускаю колпачок развернуть все работает нормально, пока он не пытается для запуска миграции. Вот ошибка я получаю:
** [deploy:update_code] exception while rolling back: Capistrano::ConnectionError, connection failed for: localhost (Errno::ECONNREFUSED: Connection refused - connect(2)) connection failed for: localhost (Errno::ECONNREFUSED: Connection refused - connect(2)))
Вот почему мне нужно запустить миграцию с сервера, а не из моей локальной машины.
Любые идеи?
Ну, имя пользователя развернуть такое же, как и мое локальное имя пользователя. Кроме того, когда я вхожу в систему и выполняю миграцию через ssh, она работает нормально. – Pandafox
Хм. Фактически, вы отправили сообщение об ошибке update_code. Могу я просто проверить, ваше приложение на самом деле называется example.com, вы закрыли развертывание: установка и развертывание крышки: проверьте с вашей локальной машины? example.com - это то, что вы ставите для конфиденциальности здесь, я беру его? – mark
Хе-хе, да, я заменил свой настоящий домен своим примером для конфиденциальности. Кодирование будет полностью развернуто на моем сервере, это просто, что capistrano пытается выполнить миграцию на моем локальном компьютере, а не на сервере :) – Pandafox