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

yipeiwu_com6年前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列表解析(列表推导式)

列表解析——用来动态地创建列表 [expr for iter_var in iterable if cond_expr] 例子一: map(lambda x: x**2, ra...

python调用c++ ctype list传数组或者返回数组的方法

示例1: pycallclass.cpp: #include <iostream> using namespace std; typedef unsigned char...

python利用pandas将excel文件转换为txt文件的方法

python将数据换为txt的方法有很多,可以用xlrd库实现。本人比较懒,不想按太多用的少的插件,利用已有库pandas将excel文件转换为txt文件。 直接上代码: ''' f...

举例详解Python中threading模块的几个常用方法

threading.Thread Thread 是threading模块中最重要的类之一,可以使用它来创建线程。有两种方式来创建线程:一种是通过继承Thread类,重写它的run方法;另...

Flask框架钩子函数功能与用法分析

本文实例讲述了Flask框架钩子函数功能与用法。分享给大家供大家参考,具体如下: 在Flask中钩子函数是使用特定的装饰器的函数。为什么叫做钩子函数呢,是因为钩子函数可以在正常执行的代码...