2015-02-10 4 views
3

У меня есть докер-контейнер с приложением sinatra внутри и еще один контейнер с приложением node.js. Они оба связаны через рис. В моем приложении sinatra я делаю запрос HTTP Post в приложение node.js. Для этого я использую камень Фарадея.Как я могу сделать HTTP-запрос из одного контейнера докера в другой связанный контейнер?

Мои вопросы теперь, как я могу сделать HTTP-запрос другому связанному контейнеру.

Вот мой fig.yml

db: 
    image: mongo:2.6.7 
    command: --smallfiles 

api: 
    build: ./api 
    command: bundle exec rackup -p 3000 
    volumes: 
    - ./api:/code 
    ports: 
    - "3000:3000" 
    links: 
     - db 
     - flickrcrawler 

flickrcrawler: 
    build: ./flickr-crawler 
    ports: 
    - "3100:3100" 
    links: 
    - db 

и вот метод в Синатра приложение я использую, чтобы сделать запрос HTTP с farady:

def crawler_call(url, tags) 
    tags.each do |t| 
    conn = Faraday.new(url: url) do |faraday| 
     faraday.request :url_encoded 
     faraday.response :logger 
     faraday.adapter Faraday.default_adapter 
    end 

    conn.post "#{t}" 
    end 
end 

что бы я прохожу этот метод в качестве параметра URL-адрес ?

ответ

4

Вы бы использовали имя службы в своем fig.yml, в этом случае, я думаю, вы называете это flickrcrawler. Так что-то вроде http://flickrcrawler:3100.

 Смежные вопросы

  • Нет связанных вопросов^_^