【发布时间】:2016-08-13 13:17:17
【问题描述】:
我将我的 rails 应用程序从本地机器移植到 docker 容器中,并遇到了 elasticsearch/searchkick 问题。我可以让它暂时工作,但我想知道是否有更好的方法。因此,基本上弹性搜索的端口与 searchkick 使用的默认 localhost:9200 不匹配。现在我在 elasticsearch 容器上使用了“docker inspect”并获得了实际的 IP,然后像 searchkick 文档所说的那样设置 ENV['ELASTICSEARCH_URL'] 变量,它就可以工作了。我遇到的问题是,如果我重新启动/更改 IP 有时会更改的容器并且我必须再次完成整个过程,那将是一个痛苦。这是我的 docker-compose.yml:
version: '2'
services:
web:
build: .
command: rails server -p 3000 -b '0.0.0.0'
volumes:
- .:/living-recipe
ports:
- '3000:3000'
env_file:
- .env
depends_on:
- postgres
- elasticsearch
postgres:
image: postgres
elasticsearch:
image: elasticsearch
【问题讨论】:
标签: ruby-on-rails elasticsearch docker-compose