I have run elasticsearch on port 8081 in cloud9.
/workspace/elasticsearch-6.1.1/bin $ ./elasticsearch -E http.port=8081
I then add 'searchkick' gem in gemfile and then bundle install
I then add searchkick in model as
class Book < ActiveRecord::Base
searchkick
end
Then i run the command
Book.reindex
I get the following error
2.3.4 :001 > Book.reindex
Faraday::ConnectionFailed: Failed to open TCP connection to localhost:9200 (Connection refused - connect(2) for "localhost" port 9200)
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/net/http.rb:882:in `rescue in block in connect'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/net/http.rb:879:in `block in connect'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/timeout.rb:91:in `block in timeout'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/timeout.rb:101:in `timeout'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/net/http.rb:878:in `connect'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/net/http.rb:863:in `do_start'
from /usr/local/rvm/rubies/ruby-2.3.4/lib/ruby/2.3.0/net/http.rb:852:in `start'
It makes sense because it is assuming the elastic search server is running on the default 9200 but i ran it on 8081. How do i tell searchkick gem to connect to 8081 port instead of 9200? I appreciate any help! Thanks!
Create an initializer config/initializers/elasticsearch.rb
:
ENV['ELASTICSEARCH_URL'] = 'http://localhost:8081'