1

CapistranoとWindowsAzureを初めて使用し、RubyonRailsアプリをAzure仮想マシンにデプロイするのに問題があります。SSHを使用してログオンしてVMに接続できます。また、VMに接続しているときに新しいRailsアプリを正常に作成しました(VMのDNSを介してアクセスできました)。ただし、VMサーバーからRailsコードを取得してローカルで編集し、変更をサーバーにプッシュする方法がわかりません。

とにかく、私は単純なRailsアプリをローカルで作成し、それを(Capistranoを使用して)AzureVMにデプロイしたいと考えています。cap deploy(およびcap deploy:setup)を実行すると、次のエラーが発生します。

connection failed for: fb-shanghai.cloudapp.net (Errno::ETIMEDOUT: Operation timed out - connect(2))

設定ファイルをいじり続けdeploy.rbますが、同じエラーが発生し続けます。また、:webVM DNS「fb-shanghai.cloudapp.net」からパブリックVIPに役割を変更して実行cap deployすると、パスワードの入力を求めるプロンプトが表示されましたが、何を入力しても失敗しました。

この時点で、AzureVMでRoRアプリを実行するために何をする必要があるかについて本当に迷っています。どんな援助も大歓迎です!

私の環境:

  • Mac OS X 10.7.5
  • Ruby 1.9.3
  • Rails 3.2.9
  • VMにRuby-Stack-1-9-3-6-Ubuntu-12-10イメージを使用する
4

2 に答える 2

2

同じ問題が発生しましたが、name_of_app.cloudapp.netの代わりにIPを使用しても機能しませんでした。理解するのに少し時間がかかりましたが、VMを作成したときに、何らかの理由でAzureがデフォルトのパブリックポートをランダムなポート番号(22ではなく)に作成したため、22に編集して機能しました。

また、VMデポのBitnamirubystackを使用してVMをインストールしたことにも言及する必要があります。

deploy.rbファイルに関しては、上記のチュートリアルのこの要点ファイルを使用しました。

于 2013-04-13T19:08:30.543 に答える
1

サーバー構成行のVIPを指定する必要があることがわかりました。

それでserver "xxx.xx.xxx.xxx", :web, :app, :db, primary: true

それ以外のserver "name_of_app.cloudapp.net", :web, :app, :db, primary: true

次に、ファイルrequire "bundler/capistrano"の先頭に追加する必要がありました。deploy.rb

最後に、CapistranowikiおよびRubyon Rails onWindowsAzureチュートリアルのいくつかの指示に従いました。

于 2013-03-26T19:31:10.910 に答える