После подключения redis к django и docker данные не сохраняются в redis-cli

Я подключил redis к django и сделал docker-compose, сам redis работает, но если я хочу подключиться к терминалу через docker exec -it redis redis-cli, то он подключается, но я не могу получить никаких данных, и если я пишу команду keys *, то данных тоже нет (кроме celery)

version: '3.8'

services:
  web:
    build: .
    container_name: django
    ports: 
      - "8000:8000"
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - .:/app
    env_file:
      - .env 
    environment:
      - DEBUG=1
      - DJANGO_ALLOWED_HOSTS=localhost 127.0.0.1
      - CELERY_BROKER=redis://redis:6379/0
      - CELERY_BACKEND=redis://redis:6379/0
      - REDIS_HOST=redis
    depends_on: 
      - db
      - redis
    links:
      - db:db

  db:
    container_name: postgres
    image: postgres
    volumes:  
      - ./data/postgres_data:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=${BD_NAME}
      - POSTGRES_USER=${BD_USER}
      - POSTGRES_PASSWORD=${BD_PASSWORD}
      - POSTGRES_HOST_AUTH_METHOD=trust
    expose:
      - '5432'
 
  redis:
    image: "redis:alpine"
    restart: always
    container_name: redis
    command: redis-server
    ports:
      - 6379:6379
  
  celery:
    build: .
    command: celery -A wishes worker -l INFO
    volumes:
      - .:/app
    depends_on:
      - web
      - redis
      - db
    environment:
      - CELERY_BROKER=redis://redis:6379/0
      - CELERY_BACKEND=redis://redis:6379/0
 

volumes:
  postgres_data:

Если Redis пуст, то, вероятно, вы забыли установить BACKEND для CACHES значение django.core.cache.backends.redis.RedisCache.

По умолчанию для CACHES используется бэкэнд django.core.cache.backends.locmem.LocMemCache, который хранит данные кэша в памяти.

Вернуться на верх