【发布时间】:2019-08-12 22:05:38
【问题描述】:
我正在为 Rails 开发创建一个 Docker 环境,但我在将 postgres 和 solr 相互连接时遇到了一些困难,我正在寻找有关如何修复它的指导。
我已经创建了一个 docker-compose 文件,以及用于查看一些页面的 rails 环境。这是我的 docker-compose 文件:
app:
build: .
command: rails server -p 3000 -b '0.0.0.0'
volumes:
- .:/app
ports:
- "3000:3000"
links:
- postgres
- solr
postgres:
image: postgres:10.7
ports:
- "5432:5432"
solr:
image: solr:8.1.1
ports:
- "8983:8983"
links:
- postgres
但是,像 rake db:seed 或 rake db:populate:all 这样的任何 rake 任务都会失败并显示错误消息
Errno::EADDRNOTAVAIL: Failed to open TCP connection to localhost:8983 (Cannot assign requested address - connect(2) for "localhost" port 8983)
我希望该端口可用,因为在我的计算机上我可以转到 localhost:8983/solr 并能够看到 solr 管理窗口,但由于某种原因,当我运行 rake 时 postgres 无法找到 solr命令。任何帮助都将不胜感激,因为我目前陷入困境并且真的不知道该怎么做。
【问题讨论】:
标签: ruby-on-rails postgresql docker solr