我正在尝试在现有的python应用程序中使用redis。一切正常,但是,每当我尝试进入127.0.0.1:4123(又名索引页)时,我都收到连接被拒绝的错误。
这是我的docker-compose文件
version: "3"
services:
backend:
build:
context: backend_server/
deploy:
mode: replicated
replicas: 5
restart_policy:
condition: on-failure
delay: 5s
max_attempts: 3
window: 120s
# service update configuration
update_config:
parallelism: 1
delay: 10s
failure_action: continue
monitor: 60s
max_failure_ratio: 0.3
depends_on:
- "redis_cache"
environment:
- REDIS_HOST=redis_cache
- REDIS_PORT=5789
volumes:
- /home/$USER/.raster/:/app/_images/
ports:
- "7777"
networks:
- backend_bridge
restart: always
command: ["python", "prod_run.py"]
nginx:
build:
context: nginx/
deploy:
restart_policy:
condition: on-failure
depends_on:
- "backend"
ports:
- "4123:80"
networks:
- backend_bridge
restart: always
redis_cache:
build:
context: redis/
deploy:
restart_policy:
condition: on-failure
volumes:
- /home/$USER/.redis/:/data
restart: on-failure
networks:
- backend_bridge
ports:
- "5789:5789"
networks:
backend_bridge:
driver: bridge
我正在使用 docker-compose up --build 命令在本地计算机上进行测试。 (我知道部署命令将不起作用。它们是针对群体的。)
这是我尝试访问127.0.0.1:4123时收到的消息
redis.exceptions.ConnectionError: Error 111 connecting to redis_cache:5789. Connection refused.
我在做什么错? TIA
======================
更新#1
我使用 docker run 命令运行redis映像,以暴露端口并使用 redis-cli -h 127.0.0.1 -p 5555 ,它已连接。但是,我收到以下消息,用于 ping
127.0.0.1:5555> ping
Error: Connection reset by peer
127.0.0.1:5555>
答案 0 :(得分:0)
原来这个问题的答案隐藏在github问题的深处
https://github.com/docker-library/redis/issues/45#issuecomment-219140550
长话短说,我不得不删除绑定地址并将保护模式设置为否。
有效。干杯