Tamam, bu yüzden Docker resmimi oluştururken bir hatam var (bir dağıtım adımına benzediğini düşünün veya Docker'ı tanımıyorsanız Heroku konuşlandırmasını düşünün). :test
ve :development
gruplarda bulunanRake Varlıkları Geliştirme veya Test Gruplarındaki Taşlar olmadan Önceden Oluşturma
Mücevher ön derleme adımı gerçekleştiğinde aradım ediliyor ve ben --without development test
araya getirdik beri - Ben capybara-webkit
bu gruba hatayı yapmaz sadece bu yüzden QT olmasını istemiyoruz olarak - precompile adımı bir hata atıyor. Yani temelde
RUN /bin/bash -l -c "RAILS_ENV=production bundle exec rake assets:precompile RAILS_GROUPS=assets --trace"
:
Could not find <gem-name> in any of the sources (Bundler::GemNotFound)
Benim Gemfile: hatanın Dockerfile
satır
source 'https://rubygems.org'
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.9'
# Use sqlite3 as the database for Active Record
# gem 'sqlite3'
# Use SCSS for stylesheets
gem 'sass-rails', '~> 5.0'
# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'
# Use CoffeeScript for .coffee assets and views
gem 'coffee-rails', '~> 4.1.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'
# 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', '~> 2.0'
# bundle exec rake doc:rails generates the API under doc/api.
gem 'sdoc', '~> 0.4.0', group: :doc
# Use ActiveModel has_secure_password
# gem 'bcrypt', '~> 3.1.7'
# Use Unicorn as the app server
# gem 'unicorn'
gem 'unicorn', '~> 4.8.3'
gem 'unicorn-worker-killer', '~> 0.4.2'
# Use Capistrano for deployment
# gem 'capistrano-rails', group: :development
gem 'rdf', '~> 1.1.0'
gem 'tripod', '~> 0.11.1'
gem 'devise'
gem 'devise_invitable'
gem 'authority'
gem 'mongoid', '~> 4.0.0'
gem 'bootstrap-sass', '~> 3.3.3'
# pagination
gem 'kaminari', '~> 0.16.3'
gem 'bootstrap-kaminari-views'
# background processing
gem 'sidekiq'
gem 'sidekiq-status'
gem 'request_store', '~> 1.1.0'
# add memoization
gem 'memoist', '~> 0.12.0'
# dropbox gem for uploads etc
gem 'dropbox-sdk', '~> 1.6.4'
# error reporting
gem 'sentry-raven'
group :development, :test do
gem "rspec-rails", "~> 3.0.0"
gem "factory_girl_rails", "~> 4.5.0"
gem "capybara", "~> 2.4"
gem "database_cleaner"
# gem "selenium-webdriver"
gem 'poltergeist'
gem 'capybara-webkit'
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
#gem 'byebug'
gem 'pry-byebug'
gem 'better_errors', '~> 2.1.1'
# Access an IRB console on exception pages or by using <%= console %> in views
gem 'web-console', '~> 2.0'
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
# gem 'spring'
end
olduğunu
hata hep bir çeşididir gerçekten sonra ne komisyon görev için --without test development
eşdeğerdir. Bunu yapabilir miyim? Bazı tavsiyeler gereğince, zaten (application.rb
olarak) değiştirdik:
Bundler.require(*Rails.groups)
Herkes
Bundler.require(:default, :assets, Rails.env)
için Raylar-Fu yeterince bu olayı çözmek için var? Dokümanlara ve SO'ya baktım, meslektaşlarıma da soruyorum ama hala kafamı duvara çarpıyor.
Şimdiye kadar bunu anladınız mı, çünkü bu gemin herhangi bir kaynakta bulunamaması durumunda da, bir geminin bağımlılığı (yağmur damlaları) hakkında bir hata (unicorn) ile karşılaşıyorum. Bu, docker oluşturma işlemi sırasında yüklenmektedir * –
Tam olarak hangi taşlar bulunmuyor? Muhtemelen olan, ': development,: test' grubundaki değerli taşlardan birinin de varlık boru hattı tarafından da kullanılan bir bağımlılıktan çekilmesidir. Bu bağımlılığı izole etmeli ve ': development:: test' grubunun dışındaki Gemfile'ınıza koymalısınız. – Chris