当我试图将AdonisJS部署到数字海洋或Azure时,我会遇到以下错误
[ioredis] Unhandled error event: Error: read ECONNRESET
at TCP.onStreamRead (internal/stream_base_commons.js:209:20)
我的Adonis应用程序需要Redis运行。我正在使用来自数字海洋的Redis实例。这是我对Redis的生产配置。
prod: {
host: Env.get("REDIS_HOST"),
port: Env.get("REDIS_PORT"),
password: Env.get("REDIS_PASSWORD"),
db: 0,
keyPrefix: ""
},
发布于 2021-01-09 17:52:29
如果要将AdonisJS应用程序连接到传输层安全性(TLS)受保护的Redis实例,则需要将tls
主机添加到配置中。
所以,prod配置应该如下所示
prod: {
host: Env.get("REDIS_HOST"),
port: Env.get("REDIS_PORT"),
password: Env.get("REDIS_PASSWORD"),
db: 0,
keyPrefix: "",
tls: {
host: Env.get("REDIS_HOST"),
},
},
发布于 2021-01-24 22:03:52
作为对我的评论的跟进-我的对接环境退化到我甚至无法通过redis-cli连接到香草码头枢纽Redis图像。最后,我通过删除所有容器、图像、卷、网络等来清理我的码头环境,然后重新启动我的mac。重建他们之后,这个问题对我来说就消失了。
我讨厌不知道“根本原因”,但有一个理论。我一直在处理一些不同的Redis图像,包括来自dockerhub的香草独立映像和来自https://github.com/Grokzen/docker-redis-cluster的集群映像。我正在调整后者的构建,以添加身份验证。理论上说,有剩余的过程在港口战斗,因为不断的建设和破坏。在调试dockerfile
和docker-entrypoint.sh
文件时,我可能已经不耐烦和硬性地停止了我多次处理的容器。:)
我知道这个答案与在DO或Azure上托管没有直接关系,但是由于症状是一样的,所以可能在某个地方出现了网络冲突。
https://stackoverflow.com/questions/65645805
复制相似问题