Я создал Dockerfile:
FROM ruby:2.2.3
WORKDIR /usr/src/app
RUN apt-get update && \
apt-get -y install nodejs && \
apt-get -y clean
COPY Gemfile Gemfile.lock ./
RUN bundle install
RUN bundle update
COPY ./dashboards ./dashboards
COPY ./widgets ./widgets
COPY ./jobs ./jobs
COPY ./config ./config
COPY ./config.ru .
COPY ./lib ./lib
COPY ./assets ./assets
ENV PORT 3030
EXPOSE $PORT
CMD ["/bin/sh"]
Я не могу запустить smashing в контейнере Docker.Я получаю LoadError.Gemfile просто ссылается на smashing для установки необходимых пакетов.К сожалению, если я запускаю свой контейнер и запускаю smashing start
, я получаю следующую ошибку:
/usr/src/app/jobs/scheduler.rb:4:in `require_relative': cannot load such file -- /usr/src/app/lib/imelk_service/imelkCalls.rb (LoadError)
from /usr/src/app/jobs/scheduler.rb:4:in `<top (required)>'
from /usr/local/bundle/gems/backports-3.11.3/lib/backports/std_lib.rb:9:in `require'
from /usr/local/bundle/gems/backports-3.11.3/lib/backports/std_lib.rb:9:in `require_with_backports'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing/app.rb:169:in `block in require_glob'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing/app.rb:168:in `each'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing/app.rb:168:in `require_glob'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing/app.rb:179:in `<top (required)>'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing.rb:3:in `require'
from /usr/local/bundle/gems/smashing-1.1.0/lib/dashing.rb:3:in `<top (required)>'
from config.ru:1:in `require'
from config.ru:1:in `block in <main>'
from /usr/local/bundle/gems/rack-2.0.5/lib/rack/builder.rb:55:in `instance_eval'
from /usr/local/bundle/gems/rack-2.0.5/lib/rack/builder.rb:55:in `initialize'
from config.ru:1:in `new'
from config.ru:1:in `<main>'
from /usr/local/bundle/gems/thin-1.7.2/lib/rack/adapter/loader.rb:33:in `eval'
from /usr/local/bundle/gems/thin-1.7.2/lib/rack/adapter/loader.rb:33:in `load'
from /usr/local/bundle/gems/thin-1.7.2/lib/thin/controllers/controller.rb:182:in `load_rackup_config'
from /usr/local/bundle/gems/thin-1.7.2/lib/thin/controllers/controller.rb:72:in `start'
from /usr/local/bundle/gems/thin-1.7.2/lib/thin/runner.rb:203:in `run_command'
from /usr/local/bundle/gems/thin-1.7.2/lib/thin/runner.rb:159:in `run!'
from /usr/local/bundle/gems/thin-1.7.2/bin/thin:6:in `<top (required)>'
from /usr/local/bundle/bin/thin:16:in `load'
from /usr/local/bundle/bin/thin:16:in `<main>'
Я пытаюсь выяснить, почему.Я проверил, что файл ìmelkCalls.rb
существует.За пределами Docker мой код работает, так что этого не может быть.Я предполагаю, что это некоторые недостающие зависимости, но я понятия не имею, какой это может быть.Я пробовал это с Ruby версий 2.5 и 2.3, но я получаю ту же ошибку.
Надеюсь, у кого-то есть представление о том, что я делаю неправильно, или он может указать мне правильное направление.
Дополнительная информация, которая может быть полезной (из контейнера Docker):
версия ruby: ruby 2.2.3p173 (2015-08-18 редакция 51636) [x86_64-linux]
версия гема: 2.5.0
версия пакета: версия пакета 1.10.6
Gemfile.lock:
GEM
remote: https://rubygems.org/
specs:
backports (3.11.3)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.12.2)
concurrent-ruby (1.0.5)
daemons (1.2.6)
et-orbi (1.1.0)
tzinfo
eventmachine (1.2.5)
execjs (2.7.0)
multi_json (1.13.1)
mustermann (1.0.2)
rack (2.0.5)
rack-protection (2.0.1)
rack
rufus-scheduler (3.4.2)
et-orbi (~> 1.0)
sass (3.4.25)
sinatra (2.0.1)
mustermann (~> 1.0)
rack (~> 2.0)
rack-protection (= 2.0.1)
tilt (~> 2.0)
sinatra-contrib (2.0.1)
backports (>= 2.0)
multi_json
mustermann (~> 1.0)
rack-protection (= 2.0.1)
sinatra (= 2.0.1)
tilt (>= 1.3, < 3)
smashing (1.1.0)
coffee-script (~> 2.4.1)
execjs (~> 2.7.0)
rack (~> 2.0.0)
rufus-scheduler (~> 3.4.2)
sass (~> 3.4.24)
sinatra (~> 2.0.0)
sinatra-contrib (~> 2.0.0)
sprockets (~> 3.7.1)
thin (~> 1.7.0)
thor (~> 0.19.4)
sprockets (3.7.1)
concurrent-ruby (~> 1.0)
rack (> 1, < 3)
thin (1.7.2)
daemons (~> 1.0, >= 1.0.9)
eventmachine (~> 1.0, >= 1.0.4)
rack (>= 1, < 3)
thor (0.19.4)
thread_safe (0.3.6)
tilt (2.0.8)
tzinfo (1.2.5)
thread_safe (~> 0.1)
PLATFORMS
ruby
DEPENDENCIES
smashing
BUNDLED WITH
1.16.1