docker django无法访问redis容器的解决方法

yipeiwu_com7年前Python基础

docker-compose.yal文件中:

 redis:
  image: redis
  container_name: xdemo.redis
  ports:
   - 6379:6379
  restart: always
django setting.py中配置redis:

CACHES = {
  'default': {
    'BACKEND': 'django_redis.cache.RedisCache',
    'LOCATION': 'redis://127.0.0.1:6379',
    "OPTIONS": {
      "CLIENT_CLASS": "django_redis.client.DefaultClient",
       "PASSWORD": "",
    },
  },
}

访问redis的时候总是报错:

redis.exceptions.ConnectionError: Error 111 connecting to 127.0.0.1:6379. Connection refused.

解决方法:将127.0.0.1设置为,docker中配置的servername, redis:

CACHES = {
  'default': {
    'BACKEND': 'django_redis.cache.RedisCache',
    'LOCATION': 'redis://redis:6379',
    "OPTIONS": {
      "CLIENT_CLASS": "django_redis.client.DefaultClient",
       "PASSWORD": "",
    },
  },
}

以上这篇docker django无法访问redis容器的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python将处理好的图像保存到指定目录下的方法

原始图像绝对路径的图像名存储在一个txt文件中,下面的程序实现的功能是按照txt文件的顺序,依次将图片读取然后进行处理,最后将处理之后的图像保存在指定的路径下: # Read in...

对pytorch中的梯度更新方法详解

背景 使用pytorch时,有一个yolov3的bug,我认为涉及到学习率的调整。收集到tencent yolov3和mxnet开源的yolov3,两个优化器中的学习率设置不一样,而且使...

Python中不同进制的语法及转换方法分析

本文实例讲述了Python中不同进制的语法及转换方法。分享给大家供大家参考,具体如下: 不同进制的书写方式 ① 八进制(Octal) 0o377 ② 十六进制(Hex) 0xFF ③ 二...

python网络编程实例简析

本文实例讲述了python网络编程,分享给大家供大家参考。 具体方法如下: 服务端代码如下: from SocketServer import(TCPServer as TCP,...

python os.path.isfile()因参数问题判断错误的解决

目的: 找出路径坐在的所有python文件(.py结尾),返回列表。 代码: def list_py(path = None): if path == None: path =...