2013-04-29 12 views
5

Lokomotywa jako open source CMS dla ruby ​​na szynach, którą chciałbym zainstalować.Instalowanie silnika CMS przy użyciu Ruby on Rails. (Lokomotywa)

Mam dobre wyniki w projektach "zaczynamy", ale mam problem z zainstalowaniem silnika Locomotive CMS.

Oto link do wymagań:

http://doc.locomotivecms.com/guides/get-started/requirements

... a oto link do aktualnego przewodnika, który instaluje systemy CMS:

http://doc.locomotivecms.com/guides/get-started/install-engine

Ok, więc pierwszy , Ruby musi być zainstalowany, wersja 1.9.3 co najmniej: terminal screen shot, demonstrating what version of ruby is installed

Następnie należy zainstalować imagemagick. Imagemagick to pakiet oprogramowania open source do wyświetlania, konwersji i edycji plików obrazów rastrowych. Po zainstalowaniu ostrzega mnie, że mam zainstalowane porty mac lub fink, mimo że usunąłem oba. Nie mam pojęcia, co zrobić z tymi zniekształconymi obiektami!

terminal screenshot showing imagemagick installation errors

Zresztą niech nasunąć. Teraz musimy zainstalować szynę w wersji 3.2.11: terminal screenshot showing loaded version of rails

Świetnie. Teraz musimy zainstalować MongoDB, bazę danych dokumentów open-source i wiodącą bazę danych NoSQL.

terminal screenshot showing MongoDB output Kilka rzeczy tutaj jest nie tak. Launchctl nic nie zwrócił? Dlaczego nie? Uruchamianie "Mongod" również nie spowodowało żadnego efektu. Złe znaki.

Teraz należy zainstalować zgrabiarkę i pakowarkę. Żadnych problemów:

terminal screenshot verifying bundler is installed terminal screenshot verifying rake is installed

Następny gem wagon musi być zainstalowany. Wagon to generator strony linii poleceń dla silnika LocomotiveCMS. Instaluje bez zarzutu:

terminal screenshot verifying wagon is installed

Wreszcie nadszedł czas na zastosowanie mają być generowane! Mam nazwał go „myapp” i stworzył go za pomocą następującego polecenia:

rails new myapp --skip-active-record --skip-test-unit --skip-javascript --skip-bundle 

Teraz wchodzę do katalogu głównego „myapp” z:

cd myapp 

zawiera odpowiednie perełki w Gemfile:

group :assets do 
gem 'locomotive_cms', '~> 2.0.1', :require => 'locomotive/engine' 
gem 'unicorn', :group => 'development' 
gem 'compass-rails', '~> 1.0.2', :group => 'assets' 
gem 'sass-rails',  '~> 3.2.4', :group => 'assets' 
gem 'coffee-rails', '~> 3.2.2', :group => 'assets' 
gem 'uglifier',  '~> 1.2.4', :group => 'assets' 
end 

Uruchom "instalację pakietu". Żadnych problemów: enter image description here

Ale tutaj, jest tutaj, gdzie myślę, gdzie błędy wchodzą w grę. Ma to wszystko wspólnego z Mongoidem.

Polecenie to można wstawić trasy silnik do głównej aplikacji:

bundle exec rails g locomotive:install 

i prowadzi do następujących ostrzeżeń:

create config/initializers/locomotive.rb 
    create config/initializers/carrierwave.rb 
    create config/initializers/dragonfly.rb 
    create config/mongoid.yml 
    rake db:mongoid:migration:install/usr/local/rvm/gems/ruby-1.9.3-  [email protected]/gems/bundler-1.2.4/lib/bundler/runtime.rb:197: warning: Insecure world writable dir /usr/local in PATH, mode 040777 
rake aborted! 
Failed to connect to a master node at localhost:27017 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:413:in  `connect' 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:574:in  `setup' 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:104:in  `initialize' 

i

rake db:mongoid:migrate 
/usr/local/rvm/gems/[email protected]/gems/bundler-1.2.4/lib/bundler/runtime.rb:197:  warning: Insecure world writable dir /usr/local in PATH, mode 040777 
rake aborted! 
Failed to connect to a master node at localhost:27017 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:413:in `connect' 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:574:in `setup' 
/usr/local/rvm/gems/ruby-1.9.3-p392/gems/mongo-1.5.2/lib/mongo/connection.rb:104:in `initialize' 

Instrukcje mówią również, aby "skonfigurować nazwę hosta mongodb i nazwę bazy danych w pliku config/mongoid.yml. " Zostawiłam je jako: „wielokierunkowego aktywacji, domyślne ustawienia regionalne, nadawca e-mail (ETC) w config/inicjalizatorów/locomotive.rb”

defaults: &defaults 
host: localhost 
port: 27017 
# slaves: 
# - host: slave1.local 
#  port: 27018 
# - host: slave2.local 
#  port: 27019 

development: 
<<: *defaults 
database: locomotive_dev 

test: 
<<: *defaults 
database: locomotive_test 

Instrukcje mówią też ustawić Ponownie zostawiłem to jako:

Locomotive.configure do |config| 
config.multi_sites = false 
config.default_locale = :en 
config.enable_logs = true 
config.mailer_sender = '[email protected]' 
end 

Chwila prawdy teraz. Uruchamianie serwera za pomocą:

bundle exec unicorn_rails 

Zużyłem na to dobre sześć godzin. Wszystko mogę to

E, [2013-04-29T20:41:49.223219 #40521] ERROR -- : reaped #<Process::Status: pid 40527 exit 1>  worker=0 
I, [2013-04-29T20:41:49.223661 #40521] INFO -- : worker=0 spawning... 
I, [2013-04-29T20:41:49.225155 #40528] INFO -- : worker=0 spawned pid=40528 
I, [2013-04-29T20:41:49.225574 #40528] INFO -- : Refreshing Gem list 
E, [2013-04-29T20:41:52.211379 #40528] ERROR -- : Failed to connect to a master node at localhost:27017 (Mongo::ConnectionFailure) 

Jednym słowem: awergohiewgiohegwhioewgiohwefiohfwaehioiohawefiohawefhioaewfohiafwehioafwiohaiofwehiofaewiohaefwihoefwahioaefwhioaefwhoiiohaefwhioefwhioaefwhioaefwhioaefwiohafewiohaefwohifaewiohaefwhioafewhiofaewhiofewaiohefwaohieawfiohfewhiofewhiofeawhiofaewhoieafwhioawefhioawfeiohawfeohi.

Jeśli ktoś mógłby pomóc, byłbym bardzo wdzięczny. Myślę, że to jest klucz:

Failed to connect to a master node at localhost:27017 (Mongo::ConnectionFailure) 
+0

Hej, @Starkers, jak się ma lokomotywa. Właśnie zacząłem się z tym bawić i do tej pory tak dobrze. Wszelkie sugestie dotyczące wdrożenia lokalnego silnika. Ponieważ dostaję błąd. Tak jak artykuł, który polecasz. Dzięki za ten post. Bardzo pomocny ++ – zee

+1

Dzięki, ale nie mogę na ciebie odpowiedzieć. Mój własny prosty CMS to wszystko, czego potrzebuję większości klientów, więc nie używam lokomotywy. To jest to, czego używam, jeśli moje własne proste cms nie będą go ciąć: http: // alchemy-cms.com/about Nie pukam lokomotywy, myślę, że iplayer BBC używa jej, więc myślę, że to zależy od większości zadań. – Starkers

+0

Dzięki za wgląd :) – zee

Odpowiedz

3

Musisz uruchomić silnik bazy danych Mongo.

Tuż przed prowadzeniem:

bundle exec unicorn_rails 

run

sudo mongod --dbpath /usr/local/var/mongodb --fork --logpath /var/log/mongodb.log 

uruchomieniem serwera jednorożec szyn będzie teraz prowadzić bez błędów.

Opcjonalnie uruchom

tail -f /var/log/mongodb.log 

Aby zobaczyć na żywo dziennika jako aplikacja komunikuje się z bazą danych!

0

Usunąłem plik inicjalizacyjny devise i ponownie uruchomiłem rails g devise:install , a następnie uruchomiłem serwer jednorożca i wszystko działało dobrze.