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

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容器的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Docker实践之python应用容器化

    一.前言 容器使用沙箱机制,互相隔离,优势在于让各个部署在容器的里的应用互不影响,独立运行,提供更高的安全性.本文主要介绍python应用(django)跑在docker容器里,编写dockerfile实现镜像构建自动化以及docker神器compose. 二.编写Dockerfile文件 官网下载的python镜像比较精简,web应用相关依赖还是需要自己安装的.编写Dockerfile,可以让你构建镜像的时候自动化.实例如下: FROM python:3.6.4 RUN mkdir /code

  • Docker部署Django应用的示例

    之前部署Web应用,没用docker,直接在服务器上部署,使用了fabric+nginx+supervisor+gunicorn部署,可查看我写过的一片博客:部署Web应用.但后来了解了docker,为其"Build,Ship and Run Any App,Anywhere"的思想所折服,觉得这个太牛逼了,所以我也尝试一下自己用docker部署Web应用.本篇文章为了记录我用docker部署web应用的过程和心得. 一.网络架构 我用Visio大概画了一下我的网络架构图: 我构建的容

  • 如何Docker化Python Django应用程序

    Docker是一个开源项目,为开发人员和系统管理员提供了一个开放平台,可以将应用程序构建.打包为一个轻量级容器,并在任何地方运行.Docker 会在软件容器中自动部署应用程序. Django 是一个用 Python 编写的 Web 应用程序框架,遵循 MVC(模型-视图-控制器)架构.它是免费的,并在开源许可下发布.它速度很快,旨在帮助开发人员尽快将他们的应用程序上线. 在本教程中,我将逐步向你展示在 Ubuntu 16.04 中如何为现有的 Django 应用程序创建 docker 镜像.我们

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

    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&qu

  • uwsgi+nginx代理Django无法访问静态资源的解决

    在部署uwsgi+nginx代理Django的时候,使用uwsgi访问正常,但是使用nginx代理端口访问的时候无法访问静态资源. 解决方法: 查看nginx启动用户,将静态资源赋权给改用户访问即可. 如我的静态资源目录:/data/django/static 赋权:chmod 755 /data/django/static -R uwsgi配置: # uwsig使用配置文件启动 [uwsgi] # 项目所在的根目录 chdir=/data/django/dailyfresh # 指定项目的ap

  • RedisTemplate访问Redis的更好方法

    目录 开始准备 RedisTemplate JPA Repository Cache 总结 开始准备 开始之前我们需要有Redis安装,我们采用本机Docker运行Redis, 主要命令如下 docker pull redis docker run --name my_redis -d -p 6379:6379 redis docker exec -it my_redis bash redis-cli 前面两个命令是启动redis docker, 后两个是连接到docker, 在使用redis-

  • HTTP 错误 403.1 - 禁止访问:执行访问被拒绝。 解决方法该页无法显示

    HTTP 错误 403.1 - 禁止访问:执行访问被拒绝. 解决方法该页无法显示您试图从目录中执行 CGI.ISAPI 或其他可执行程序,但该目录不允许执行程序.-------------------------------------------------------------------------------- 请尝试以下操作: 如果您认为该目录应该允许执行访问权限,请与网站管理员联系.HTTP 错误 403.1 - 禁止访问:执行访问被拒绝.Internet 信息服务 (IIS) -

  • *.ashx文件不能访问Session值的解决方法

    本文实例讲述了*.ashx文件不能访问Session值的解决方法.分享给大家供大家参考之用.具体方法如下: 实例代码如下: <%@ WebHandler Language="C#" Class="productHandler" %> using System; using System.Web; using JBTCard.Entity.CompanyEntity; using JBTCard.Business.CompanyBS; using Syst

  • Vue.js 中 axios 跨域访问错误问题及解决方法

    1.假如访问的接口地址为 http://www.test.com/apis/index.php  (php api 接口) 2.而开发地址为http://127.0.0.1:8080,当axios发起请求时,出现如下错误: Failed to load http://www.test.com/apis/index.php?&act=login: The value of the 'Access-Control-Allow-Origin' headerin the response must no

  • 基于Django静态资源部署404的解决方法

    一. 静态资源static文件放在app中 确认django.contrib.staticfiles包含在INSTALLED_APPS中. 在settings文件中定义STATIC_URL,例如: STATIC_URL = '/static/' 在模板中,可以硬编码URL如/static/my_app/example.jpg,或者最好使用static模板标签通过配置的STATICFILES_STORAGE存储来构建给定相对路径的URL(当你要切换到用于提供静态文件的内容分发网络(CDN)时,这样

  • Springboot 跨域配置无效及接口访问报错的解决方法

    跨域配置如下,Springboot 版本为 2.4.1 ///跨域访问配置 @Configuration public class CorsConfig { private CorsConfiguration buildConfig() { CorsConfiguration corsConfiguration = new CorsConfiguration(); corsConfiguration.setAllowCredentials(true); //sessionid 多次访问一致 co

  • tomcat正常启动但网页却无法访问的几种解决方法

    目录 问题1: jdk的版本冲突 一.先检查本机的jdk版本 二.修改jdk版本 三.重新启动tomcat 问题2: 端口冲突 tomcat版本和jdk版本对应关系 最近使用tomcat遇到一点小问题,项目使用tomcat,启动后显示无法访问页面.根据自身使用情况和一些网上搜索到的结果,汇总整理一下. 可能遇到的问题有以下几种: 问题1: jdk的版本冲突 使用的tomcat1.6版本,电脑安装的jdk版本是 1.8,jdk版本冲突导致无法正常使用.解决方案:修改jdk的版本,由jdk1.8修改

  • 利用ganglia监控redis的最新解决方法

    前言 Ganglia主要用来监控系统性能的软件,通过曲线很容易见到每个节点的工作状态,对合理调整,分配系统资源,提高系统整体性能起到重要作用,支持浏览器方式访问,但不能监控节点硬件技术指标.Ganglia是分布式的监控系统. Redis现在在业务中应用已经很广泛了,但是如何监控redis,实时的观察redis的性能,在搜索引擎搜索"ganglia监控redis",发现都是13年的老文章,都是说要到https://github.com/ganglia/gmond_python_modul

随机推荐