2015-06-14 71 views
0

我試圖讓現有的Ruby on Rails項目的設置,但我掛在postgres數據庫設置。我用RVM用ruby 2.1.2設置了這個項目。安裝在PG寶石使用以下命令自制:rake db:setup - > rake aborted! Errno :: ENOENT:沒有這樣的文件或目錄 - 識別

gem install pg -- --with-pg_config=/usr/local/bin/pg_config 

我的database.yml文件看起來是這樣的:

development: 
    adapter: postgresql 
    encoding: unicode 
    database: myapp_development 
    pool: 5 
    username: myusername 
    password: 

test: 
    adapter: postgresql 
    encoding: unicode 
    database: myapp_test 
    pool: 5 
    username: myusername 
    password: 

我捆綁安裝了我所有的寶石。

source 'https://rubygems.org' 

# Bundle edge Rails instead: gem 'rails', github: 'rails/rails' 
gem 'rails', '4.0.2' 
gem 'activerecord-session_store' 

# Use postgresql as the database for Active Record 
gem 'pg' 

# Use SCSS for stylesheets 
gem 'sass-rails', '~> 4.0.0' 

# Use Uglifier as compressor for JavaScript assets 
gem 'uglifier', '>= 1.3.0' 

# Use CoffeeScript for .js.coffee assets and views 
gem 'coffee-rails', '~> 4.0.0' 

# See https://github.com/sstephenson/execjs#readme for more supported runtimes 
# gem 'therubyracer', platforms: :ruby 

# Use jquery as the JavaScript library 
gem 'jquery-rails' 
gem 'jquery-ui-rails' 

# authentication using Devise (email/password) and omniauth (oauth) 
gem "devise", '~> 3.2.0' 
gem 'devise_invitable', '~> 1.3.0' 
gem "beta_invites", :github=>'danman01/beta_invites' 
gem 'jquery-datatables-rails', git: 'git://github.com/rweng/jquery-datatables-rails.git' 
gem "omniauth-soundcloud" 
# validation for emails 
gem 'valid_email' 


# set env variables within config/application.yml 
gem "figaro" 

# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks 
# gem 'turbolinks' 

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder 
gem 'jbuilder', '~> 1.2' 

# User roles. ex: User.first.add_role!("admin") 
gem "easy_roles" 

# manage meta tags 
gem "meta-tags", :require => "meta_tags" 

# error notification. TODO - setup https://github.com/smartinez87/exception_notification 
gem 'exception_notification', git: "git://github.com/smartinez87/exception_notification.git" 

# nice rails urls for seo and readability 
gem "friendly_id", '~> 5.0.0' 

# use foreman start to startup multiple processes at once (i.e. rails and delayed job queue) 
gem "foreman" 

gem "nokogiri", '~> 1.6.3' 

# pagination 
gem "kaminari" 

# admin panel, available at /admin 
gem "rails_admin" 

# cron scheduling for the server. See config/schedule 
gem 'whenever', :require =>false 

# tool to party 
gem 'httparty' 

gem 'simple_form' 
gem 'bootstrap-sass', '~> 3.1.1' 

# app permissions. set in models/ability.rb 
gem 'cancancan', '~> 1.8' 

# caching 
gem 'dalli' 

# activity feed 
gem 'public_activity' 

# image upload 
gem 'carrierwave' 
gem 'carrierwave-aws' 
gem 'mini_magick' 

gem "sidekiq" 
gem 'sinatra', require: false 
gem 'slim' 
# tree structure 
gem "ancestry" 

# more organized db seeds 
gem "seedbank" 

# run code safely in migrations 
gem 'migration_data' 

group :doc do 
    # bundle exec rake doc:rails generates the API under doc/api. 
    gem 'sdoc', require: false 
end 

group :development do 

    # better formatting of errors 
    gem "better_errors" 
    # do not output so much about assets to console 
    gem "quiet_assets" 
    # debugging tool: https://github.com/banister/binding_of_caller 
    gem "binding_of_caller" 
    gem "tracer_bullets" 
end 

group :development, :test do 
    gem 'rspec-rails' 
    gem "faker" 
    gem "factory_girl_rails", "~> 4.0" 
    gem "pry-rails" 
    gem 'pry-byebug' 
    # preload rails app to speed things up 
    gem "spring" 
    gem "spring-commands-rspec" 
    # auto run things 
    gem "guard" 
    gem "guard-rspec", require: false 
    gem 'rb-fsevent' if `uname` =~ /Darwin/ 
    gem 'thin' # or thin 


end 

group :development, :production do 
    gem 'cohort_me' 
end 

group :test do 
    gem 'capybara' 
    gem "launchy" 
    gem "database_cleaner" 
end 

# Rails view utilities 

# use country-select with priority countries like: country_select("user", "country_name", [ "United Kingdom", "France", "Germany" ]) 
gem 'country-select' 

# Use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.1.2' 

# Use unicorn as the app server 
gem 'unicorn' 

# random comment 

# Use Capistrano for deployment 

gem 'capistrano-rails', '~> 1.1' 
gem 'capistrano', '~>3.1' 
gem 'capistrano-bundler', '~> 1.1.2' 
gem 'capistrano-rvm' 
gem 'capistrano-sidekiq', github: 'seuros/capistrano-sidekiq'# 
# gem 'rails_12factor', group: :production 
# ruby '2.1.1' 
gem 'rb-fsevent' 

我手動啓動以postgres服務器使用:

pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start 

日誌文件輸出該:

ERROR: database "myapp_development" already exists 
STATEMENT: CREATE DATABASE "musictown_development" ENCODING = 'unicode' 
ERROR: database "myapp_test" already exists 
STATEMENT: CREATE DATABASE "musictown_test" ENCODING = 'unicode' 

備選地我使用的postgresapp啓動服務器。

當我運行耙分貝:設置我得到這個:

myapp_development already exists 
myapp_test already exists 

它創建了一堆表和索引的,然後當它到達這裏停止:

-- initialize_schema_migrations_table() 
    -> 0.0154s 
rake aborted! 
Errno::ENOENT: No such file or directory - identify 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/subexec-0.2.3/lib/subexec.rb:71:in `spawn' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/subexec-0.2.3/lib/subexec.rb:71:in `spawn' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/subexec-0.2.3/lib/subexec.rb:55:in `run!' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/subexec-0.2.3/lib/subexec.rb:41:in `run' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:405:in `run' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:399:in `run_command' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:184:in `valid?' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:140:in `create' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:47:in `read' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:111:in `block in open' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:110:in `open' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/mini_magick-3.8.0/lib/mini_magick/image.rb:110:in `open' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/processing/mini_magick.rb:260:in `manipulate!' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/processing/mini_magick.rb:153:in `resize_to_fit' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/processing.rb:84:in `block in process!' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/processing.rb:76:in `each' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/processing.rb:76:in `process!' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/callbacks.rb:18:in `block in with_callbacks' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/callbacks.rb:18:in `each' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/callbacks.rb:18:in `with_callbacks' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/uploader/cache.rb:122:in `cache!' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/mount.rb:329:in `cache' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/mount.rb:163:in `image=' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/carrierwave-0.10.0/lib/carrierwave/orm/activerecord.rb:39:in `image=' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/attribute_assignment.rb:42:in `public_send' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/attribute_assignment.rb:42:in `_assign_attribute' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/attribute_assignment.rb:29:in `block in assign_attributes' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/attribute_assignment.rb:23:in `each' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/attribute_assignment.rb:23:in `assign_attributes' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/core.rb:460:in `init_attributes' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/core.rb:185:in `initialize' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/inheritance.rb:27:in `new' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/inheritance.rb:27:in `new' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/activerecord-4.0.2/lib/active_record/persistence.rb:36:in `create' 
/Users/myusername/Documents/MusicTown/musictown/db/seeds.rb:9:in `block in define_seed_task' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/seedbank-0.3.0/lib/seedbank/dsl.rb:24:in `module_eval' 
/Users/myusername/.rvm/gems/ruby-2.1.2/gems/seedbank-0.3.0/lib/seedbank/dsl.rb:24:in `block in define_seed_task' 
/Users/myusername/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `eval' 
/Users/myusername/.rvm/gems/ruby-2.1.2/bin/ruby_executable_hooks:15:in `<main>' 
Tasks: TOP => db:setup => db:seed => db:seed:common => db:seed:original 
(See full trace by running task with --trace) 

也許那裏有什麼錯與gemfile中的其中一個寶石?

這個問題很不錯,當然也有人用。Carrierwave, Rails 4; Errno::ENOENT (No such file or directory - identify)。也許一些寶石是錯誤的版本?

+1

問題不是PostgreSQL,問題是通過CarrierWave的minimagick。 'identify'是ImageMagick的一部分,似乎你沒有在你的'PATH'中。 –

+0

嗨@ muistooshort感謝您的迴應。我對於我應該做的事情仍然有點不清楚。我應該將什麼路徑添加到我的bash_profile中? –

+1

'identify'是ImageMagick的一部分,因此您需要安裝ImageMagick CLI工具,並且需要將它們放在PATH中。我不使用CarrierWave或minimagick,所以我在這裏做一些猜測,大概這些寶石的文檔將涵蓋所有這些東西。 –

回答

1

要解決此問題,請從此處安裝ImageMagick CLI工具:imagemagick.org/script/binary-releases.php,Mac OS Binary Release。用MacPorts進行安裝,將路徑添加到我的.bash_profile文件中。現在rake db:setup命令能夠找到ImageMagick,並且可以工作。

相關問題