Рельсы, Slicehost, Capistrano - Deployment вопросы портов

голоса
2

Я получаю ошибку порта, когда я пытаюсь развернуть мое приложение с помощью:

cap deploy:cold

Ошибка:

ssh: connect to host domain.com port 22: Connection refused

Мой deploy.rb (заменить уязвимую информацию, где это уместно):

set :user, 'user'
set :domain, 'domain.com'
set :application, App Name

# file paths
set :repository,  user@domain.com:git/appname.git
set :port, 9728
set :deploy_to, /home/ruby/public_html/appname

# distribute your applications across servers (the instructions below put them)
# all on the same server, definied above as 'domain', adjust as necessary
role :web, domain
role :app, domain
role :db,  domain, :primary => true

# you might need to set this if you aren't seeing password prompts 
# default_run_options[:pty] = true

# As Capistrano executes in a non-interactive mode and therefore doesn't cause 
# any of your shell profile scripts to be run, the following might be needed 
# if (for example) you have locally installed gems or applications. Note: 
# this needs to contain the full values for the variables set, not simply
# the deltas. 

# miscellaneous options
set :deploy_via, :remote_cache
set :scm, :git
set :branch, 'master'
set :scm_verbose, true
set :use_sudo, false

# task which causes Passenger to initiate a restart

namespace :deploy do
  task :restart do
    run touch #{current_path}/tmp/restart.txt
  end
end

# optional task to reconfigure databases
after deploy:update_code, :configure_database
desc copy database.yml into the current release path
task :configure_database, :roles => :app do
  do_config = #{deploy_to}/config/database.yml
  run cp #{db_config} #{release_path}/config/database.yml
end

Я понимаю ошибку, но не могу видеть, чтобы сделать изменения. Я понял: установить порт, будет обрабатывать его.

Задан 11/02/2010 в 01:10
источник пользователем
На других языках...                            


4 ответов

голоса
2

Вот то, что работает: вы должны иметь

set :port, port#
set :repository, "ssh://#{user}@IPAddress:#{port}/~/path/to/git

Или же попробовать: Вот можно исправить. добавить ssh_options [: порт] = порт # Может работать

Ответил 17/09/2010 в 16:37
источник пользователем

голоса
2

Вы пробовали поставить порт в вашем пути в хранилище? Что-то вродеssh://user@domain.com:9728/git/appname.git

Я думаю , что Capistrano использует только порт , который вы укажете в set :portвойти в удаленных серверах.

Ответил 11/02/2010 в 02:08
источник пользователем

голоса
0

К сожалению, чтобы констатировать очевидное, но:

  • Является ли порт действительно открыт на сервере?
  • Вы изменили его на что-то другое?
  • Является ли она доступна снаружи?
  • Блокирует брандмауэр это?
Ответил 11/02/2010 в 02:08
источник пользователем

голоса
-1

Пожалуйста, попробуйте

server "domain:9728", :web, :app, :db
Ответил 31/01/2013 в 03:43
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more