亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

redis HMSEET 發生錯誤,請撥 tcp:6379: 連接: 連接被拒絕

redis HMSEET 發生錯誤,請撥 tcp:6379: 連接: 連接被拒絕

Go
撒科打諢 2022-08-01 15:05:06
我有一個帶有golang gin服務器,postgresql和redis的docker化后端。一切都從這個 docker-compose.yaml 文件正確開始:version: '3.9'services:  postgresql:    image: 'postgres:13.1-alpine'    volumes:       - data:/var/lib/postgresql/data    env_file:       - ./env/postgre.env    healthcheck:        test: ["CMD-SHELL", "pg_isready -U postgres"]        interval: 10s        timeout: 5s        retries: 5    ports:       - '5432:5432'  server:    build: ./server    ports:      - '8000:8000'    volumes:       - ./server:/app    depends_on:       - postgresql  redis:    image: "redis"    ports:       - "6379:6379"    volumes:       - $PWD/redis-data:/var/lib/redisvolumes:   data:比我在主函數中初始化 redis:func main() {    util.InitializeRedis()    (...)// InitializeRedis funcfunc newPool() *redis.Pool {    return &redis.Pool{        MaxIdle:3,        IdleTimeout:240 * time.Second,        DialContext: func(context.Context) (redis.Conn, error) {            return redis.Dial("tcp",":6379")        },    }}var (    pool *redis.Pool)func InitializeRedis() {    flag.Parse()    pool = newPool()}它不會提示任何錯誤,但我無法與池建立連接。進入另一個函數:處理“/redis”進行測試router.GET("/redis", util.ServeHome)ServeHome funcfunc ServeHome(ctx *gin.上下文){conn := pool.Get()defer conn.Close()var p1 struct{    Title string `redis:"title" json:"title"`    Author string `redis:"author" json:"author"`    Body string `redis:"body" json:"body"`}p1.Title = "Example"p1.Author = "Gary"p1.Body = "Hello"if _, err := conn.Do("HMSET", redis.Args{}.Add("id1").AddFlat(&p1)...); err != nil {    log.Fatalf("Error occured with redis HMSEET, %v", err) // Error in console is from here    return}(...)當我嘗試訪問/redis with Insomnia時,它顯示:錯誤:服務器沒有返回任何內容(沒有標頭,沒有數據),并且在控制臺日志中:redis HMSEET發生錯誤,請撥tcp:6379:連接被拒絕我找不到任何為我解決這個問題的文章,所以我很感激任何幫助。
查看完整描述

1 回答

?
BIG陽

TA貢獻1859條經驗 獲得超6個贊

由于您使用的是 docker-compose Redis 在 上不可用,而是在 主機名 上可用。:6379redis

我認為您需要將代碼更新為以下內容:

redis.Dial("tcp","redis:6379")


查看完整回答
反對 回復 2022-08-01
  • 1 回答
  • 0 關注
  • 213 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號