rubinius: Rails Start Fails with "Kernel(Thread)#start (method_missing)" using Rubinius Docker Image
I hope this is just a configuration issue on my part and not anything serious…
Problem
When starting the Rails server using Rubinius I’m getting a NoMethodError undefined method ‘start’ on intense of Thread.
(Full stack trace at bottom)
root@5ff360c597d8:/TestApp# rails s
=> Booting Puma
=> Rails 5.0.0.1 application starting in development on http://localhost:3000
=> Run `rails server -h` for more startup options
[Listen warning]:
Listen will be polling for changes. Learn more at https://github.com/guard/listen#polling-fallback.
Exiting
An exception occurred running bin/rails
undefined method `start' on an instance of Thread. (NoMethodError)
Backtrace:
Kernel(Thread)#start (method_missing) at core/zed.rb:1414
How to Reproduce
I’m running macOS Sierra and using Docker for Mac, with an image based on the Rubinius Docker image. The TestApp created by the below Dockerfile will cause this issue on my system and has no package or gem installation issues during the image build. After building, open the shell within a container based on this image and start the TestApp rails server.
FROM rubinius/docker
RUN apt-get update
RUN apt-get install -y postgresql libpq-dev sqlite3 libsqlite3-dev ruby-dev libxslt-dev libxml2-dev build-essential nodejs llvm
RUN gem install rails
RUN cd ~/
RUN rails new TestApp
RUN cd TestApp
RUN bundle install
Configuration Details
I’m using macOS Sierra and Docker for Mac
- Output of
rbx -v:rubinius 3.60 (2.3.1 5d5e49f7 2016-09-21 3.6.0) [x86_64-linux-gnu] - Output of
uname -a:Linux 5ff360c597d8 4.4.20-moby #1 SMP Thu Sep 15 12:10:20 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux - Distribution name (in case of Linux/BSD): Ubuntu 14.04
Stack Trace
root@5ff360c597d8:/TestApp# rails s -p 3333
=> Booting Puma
=> Rails 5.0.0.1 application starting in development on http://localhost:3333
=> Run `rails server -h` for more startup options
[Listen warning]:
Listen will be polling for changes. Learn more at https://github.com/guard/listen#polling-fallback.
Exiting
An exception occurred running bin/rails
undefined method `start' on an instance of Thread. (NoMethodError)
Backtrace:
Kernel(Thread)#start (method_missing) at core/zed.rb:1414
ActiveSupport::EventedFileUpdateChecker#boot! at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/evented_file_update_checker.rb:90
ActiveSupport::EventedFileUpdateChecker#initialize at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/evented_file_update_checker.rb:61
Class#new at core/alpha.rb:93
I18n::Railtie.initialize_i18n at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/i18n_railtie.rb:59
{ } in Object(Class)#__script__ at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/i18n_railtie.rb:15
Proc#call at core/proc.rb:20
ActiveSupport.execute_hook at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/lazy_load_hooks.rb:36
{ } in ActiveSupport.run_load_hooks at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/lazy_load_hooks.rb:45
Array#each at core/array.rb:72
ActiveSupport.run_load_hooks at /opt/rubinius/3.60/gems/gems/activesupport-5.0.0.1/lib/active_support
/lazy_load_hooks.rb:44
{ } in Object(TestApp::Application)#__script__ at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/application
/finisher.rb:65
BasicObject(TestApp::Application)#instance_exec at core/basic_object.rb:160
Rails::Initializable::Initializer#run at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails
/initializable.rb:30
{ } in Rails::Initializable(TestApp::Application)#run_initializers at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails
/initializable.rb:55
{ } in TSort(Rails::Initializable::Collection)#tsort_each at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib/rubysl/tsort
/tsort.rb:150
{ } in TSort(Rails::Initializable::Collection)#each_strongly_connected_component at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib
/rubysl/tsort/tsort.rb:183
TSort(Rails::Initializable::Collection)#each_strongly_connected_component_from at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib
/rubysl/tsort/tsort.rb:219
{ } in TSort(Rails::Initializable::Collection)#each_strongly_connected_component at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib
/rubysl/tsort/tsort.rb:182
Array(Rails::Initializable::Collection)#tsort_each_node (each) at core/array.rb:72
TSort(Rails::Initializable::Collection)#each_strongly_connected_component at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib/rubysl
/tsort/tsort.rb:180
TSort(Rails::Initializable::Collection)#tsort_each at /opt/rubinius/3.60/gems/gems/rubysl-tsort-2.0.1/lib/rubysl/tsort
/tsort.rb:148
Rails::Initializable(TestApp::Application)#run_initializers at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails
/initializable.rb:54
Rails::Application(TestApp::Application)#initialize! at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails
/application.rb:352
Object#__script__ at config/environment.rb:5
Rubinius::CodeLoader.require at core/code_loader.rb:233
Rubinius::CodeLoader.require_relative at core/code_loader.rb:147
Kernel(Rack::Builder)#require_relative at core/kernel.rb:857
{ } in Object(Rack::Builder)#__script__ at config.ru:3
BasicObject(Rack::Builder)#instance_eval at core/basic_object.rb:102
Rack::Builder#initialize at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/builder.rb:55
Class#new at core/alpha.rb:93
{ } in Object#__script__ at config.ru+9
Rubinius::BlockEnvironment#call_on_instance at core/block_environment.rb:147
Kernel(Class)#eval at core/kernel.rb:1130
Rack::Builder.new_from_string at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/builder.rb:49
Rack::Builder.parse_file at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/builder.rb:40
Rack::Server(Rails::Server)#build_app_and_options_from_config at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/server.rb:318
Rack::Server(Rails::Server)#app at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/server.rb:218
Rails::Server#app at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/server.rb:59
Rack::Server(Rails::Server)#wrapped_app at /opt/rubinius/3.60/gems/gems/rack-2.0.1/lib/rack/server.rb:353
Rails::Server#log_to_stdout at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/server.rb:124
Rails::Server#start at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/server.rb:77
{ } in Rails::CommandsTasks#server at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/commands_tasks.rb:90
Kernel(Rails::Server)#tap at core/kernel.rb:915
Rails::CommandsTasks#server at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/commands_tasks.rb:85
Rails::CommandsTasks#run_command! at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands
/commands_tasks.rb:49
Object#__script__ at /opt/rubinius/3.60/gems/gems/railties-5.0.0.1/lib/rails/commands.rb:18
Rubinius::CodeLoader.require at core/code_loader.rb:233
Kernel(Object)#require at core/kernel.rb:851
Object#__script__ at bin/rails:4
Rubinius::CodeLoader#load_script at core/code_loader.rb:505
Rubinius::CodeLoader.load_script at core/code_loader.rb:590
Rubinius::Loader#script at core/loader.rb:679
Rubinius::Loader#main at core/loader.rb:862
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Comments: 18 (13 by maintainers)
@albabar ok, super puzzling. I’m happy to hear it’s working for you now.