如何解决PostgreSQL :服务器是否在主机“localhost”(::1) 上运行并接受错误
Celery 无法在我的 docker 服务中连接到 Postgresql 并收到此错误
Could not connect to server: Cannot assign requested address
celery_1 | Is the server running on host "localhost" (::1) and accepting
celery_1 | TCP/IP connections on port 5432?
虽然 Postgresql 对数据库工作正常,但我能够执行操作 只是在 celery 的情况下。
我现在在这个 celery 服务中有 2 个案例
celery:
build:
context: ./
dockerfile: Dockerfile
command: celery -A sampleproject worker -l info
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_HOST=${POSTGRES_HOST}
- POSTGRES_PORT=${POSTGRES_PORT}
volumes:
- .:/usr/src/app/
depends_on:
- database
- app
- redis
当我在 celery 环境中传递所有 Postgresql 变量 时,它的工作正常。当我删除它们时它不起作用。为什么会发生?我该如何解决这个问题?这样我就可以用正确的方式运行芹菜
解决方法
在搜索时发现了这个。我会将我的解决方案分享给发现此问题的其他人。
对我来说,问题是 ${POSTGRES_HOST}
主机设置为 localhost
。它应该设置为 database
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。