Typo 6.1の新規インストールをアップロードしようとしています。これは、データベースとしてmysqlを解凍して選択しただけです。予想どおり、ローカルでは正常に機能します。しかし、CloudFoundryにプッシュすると、アプリケーションが起動しません。エラーも発生せず、起動を拒否するだけです。
他の誰かがCloudFoundryでTypo6を実行できるようになりましたか?もしそうなら、それを構成するためにどのような手順を実行しましたか?
Typo 6.1の新規インストールをアップロードしようとしています。これは、データベースとしてmysqlを解凍して選択しただけです。予想どおり、ローカルでは正常に機能します。しかし、CloudFoundryにプッシュすると、アプリケーションが起動しません。エラーも発生せず、起動を拒否するだけです。
他の誰かがCloudFoundryでTypo6を実行できるようになりましたか?もしそうなら、それを構成するためにどのような手順を実行しましたか?
はい、http://typo-jambay.cloudfoundry.com/で動作しました
ステップ1-Gemfileを編集します。新しいrake(10.0.3)は満足のいくものではないようですので、同じマイナーアップデートを使用する必要があります。
変化する:
gem 'rake', '>= 0.9.2'
に
gem 'rake', '~> 0.9.2'
ステップ2-使用する予定のデータベースでバンドルインストールを実行していることを確認します。postgressを使用したので、config/database.ymlをconfigにあるpostgresバージョンのコピーにしました。
ステップ3-このようなmanifest.ymlファイルを使用できます。最新バージョンのvmc(gem install vmc --pre)があれば、vmcpushがすべてを処理する必要があります。
---
applications:
- name: typo
framework: rails3
runtime: ruby19
memory: 256M
instances: 1
url: typo.${target-base}
path: .
services:
postgresql-ccdb5:
label: postgresql
Typo 6は少し古いRailsプロジェクトですが、コピーが機能しています。http://typo6.cloudfoundry.comにあります
したがって、デプロイするには、次の手順に従います。
タイプミス6リポジトリのクローンを作成します-git clone git://github.com/fdv/typo.git
'mysql2'がそこにあることを確認して、Gemfileを単純化します
source :rubygems
gem 'rails', '~> 3.2.6'
gem 'mysql2'
gem 'require_relative'
gem 'htmlentities'
gem 'json'
gem 'bluecloth', '~> 2.1'
gem 'coderay', '~> 0.9'
gem 'kaminari'
gem 'RedCloth', '~> 4.2.8'
gem 'addressable', '~> 2.1', :require => 'addressable/uri'
gem 'mini_magick', '~> 1.3.3', :require => 'mini_magick'
gem 'uuidtools', '~> 2.1.1'
gem 'flickraw-cached', :require => 'flickraw'
gem 'rubypants', '~> 0.2.0'
gem 'rake', '~> 0.9.2'
gem 'acts_as_list'
gem 'acts_as_tree_rails3'
gem 'fog'
gem 'recaptcha', :require => 'recaptcha/rails', :branch => 'rails3'
gem 'prototype-rails', '~> 3.2.1'
gem 'prototype_legacy_helper', '0.0.0', :git => 'http://github.com/rails/prototype_legacy_helper.git'
gem 'rails_autolink', '~> 1.0.9'
gem 'dynamic_form', '~> 1.1.4'
config/database.yml.mysqlをconfig/database.ymlに移動します
行うbundle install
vmcを使用してデプロイします。これが重要な部分です。アプリケーションの種類を尋ねられたら、「その他」を選択してから「ラック」を選択します。フレームワークとしてruby1.9を選択し、アプリケーションに適切な量のメモリ(少なくとも128M)を割り当てていることを確認してください。新しいMySQLサービスもアプリケーションに追加します。この時点で、アプリケーションはデプロイされ、正常に起動するはずです。
現時点でアプリケーションにアクセスすると、Rails500エラーが表示されます。これは、データベースがシードされていないためです。データベースをシードするには、データベースへのトンネルをローカルに作成して、データベースに対してdb:seedrakeタスクを実行できるようにする必要があります。
このようにトンネルを作成しvmc tunnel [name of the service]
、クライアントに対して「なし」を選択します。トンネルがバインドされると、データベースポップアップの資格情報と名前が表示されます。別のコンソールウィンドウで、database.ymlファイルを変更して、それらの詳細が含まれるようにします。アドレスがlocalhostではなく127.0.0.1であることを確認してください。
login: &login
adapter: mysql2
host: 127.0.0.1
username: uzkeDkKwBnkmC
password: pcf4oP3N2UbdV
port: 10000
development:
database: df67f078353974ccd8b090ccb726c9109
<<: *login
test:
database: typo_tests
<<: *login
production:
database: typo
<<: *login
トンネルを開いたまま、rake db:seedタスクを実行します-bundle exec rake db:seed
これが完了したら(数分かかる場合があります)、インストールを実行できます。
これがあなたのために働くことを願っています、どんな問題でも、ただ私の答えにコメントしてください。
編集:jambayのソリューションが機能する場合は、それを使用してください。はるかに簡単です。
vmc logsコマンドを使用してCloudFoundryのログを確認できましたか?