我有一个装有sinatra app的docker容器,另一个带有node.js app的容器。它们都通过图链接。在我的sinatra应用程序中,我正在向node.js应用程序发出HTTP Post请求。为此,我使用法拉第宝石。
我现在的问题是如何向另一个链接容器发出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
这里是sinatra应用程序中用于使用farady发出HTTP请求的方法:
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参数传递给我什么?
答案 0 :(得分:4)
您可以在fig.yml
中使用该服务的名称,在这种情况下,我认为您称之为flickrcrawler
。所以像http://flickrcrawler:3100
。