Cache site with Redis
This commit is contained in:
parent
1323ba27a6
commit
32e9ccb413
3 changed files with 62 additions and 9 deletions
37
docker-compose.yaml
Normal file
37
docker-compose.yaml
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
services:
|
||||
# Postgres - Database
|
||||
feedvault_postgres:
|
||||
container_name: feedvault_postgres
|
||||
image: postgres:16
|
||||
user: "1000:1000"
|
||||
ports:
|
||||
- 5434:5432 # Host:Container
|
||||
restart: always
|
||||
environment:
|
||||
- POSTGRES_USER=${PGUSER}
|
||||
- POSTGRES_PASSWORD=${PGPASSWORD}
|
||||
- POSTGRES_DB=${PGDATABASE}
|
||||
volumes:
|
||||
- /mnt/Fourteen/Docker/FeedVault/Postgres:/var/lib/postgresql/data
|
||||
networks:
|
||||
- db
|
||||
redis:
|
||||
container_name: feedvault_redis
|
||||
image: redis:7
|
||||
restart: always
|
||||
user: "1000:1000"
|
||||
ports:
|
||||
- 6380:6379 # Host:Container
|
||||
environment:
|
||||
- REDIS_PASSWORD=${REDIS_PASSWORD}
|
||||
command: /bin/sh -c 'redis-server --requirepass ${REDIS_PASSWORD} --appendonly yes --maxmemory 4gb --maxmemory-policy allkeys-lru'
|
||||
networks:
|
||||
- redis
|
||||
volumes:
|
||||
- /mnt/Fourteen/Docker/FeedVault/Redis:/data
|
||||
|
||||
networks:
|
||||
db:
|
||||
driver: bridge
|
||||
redis:
|
||||
driver: bridge
|
||||
|
|
@ -112,7 +112,9 @@ MIDDLEWARE: list[str] = [
|
|||
"whitenoise.middleware.WhiteNoiseMiddleware",
|
||||
"debug_toolbar.middleware.DebugToolbarMiddleware",
|
||||
"django.contrib.sessions.middleware.SessionMiddleware",
|
||||
"django.middleware.cache.UpdateCacheMiddleware",
|
||||
"django.middleware.common.CommonMiddleware",
|
||||
"django.middleware.cache.FetchFromCacheMiddleware",
|
||||
"django.middleware.csrf.CsrfViewMiddleware",
|
||||
"django.contrib.auth.middleware.AuthenticationMiddleware",
|
||||
"django.contrib.messages.middleware.MessageMiddleware",
|
||||
|
|
@ -167,3 +169,17 @@ STORAGES: dict[str, dict[str, str]] = {
|
|||
|
||||
# Our site ID
|
||||
SITE_ID = 1
|
||||
|
||||
REDIS_PASSWORD: str = os.getenv(key="REDIS_PASSWORD", default="")
|
||||
REDIS_HOST: str = os.getenv(key="REDIS_HOST", default="192.168.1.2")
|
||||
REDIS_PORT: str = os.getenv(key="REDIS_PORT", default="6379")
|
||||
CACHES: dict[str, dict[str, str]] = {
|
||||
"default": {
|
||||
"BACKEND": "django.core.cache.backends.redis.RedisCache",
|
||||
"LOCATION": f"redis://:{REDIS_PASSWORD}@{REDIS_HOST}:{REDIS_PORT}/0",
|
||||
},
|
||||
}
|
||||
|
||||
CACHE_MIDDLEWARE_ALIAS = "default"
|
||||
CACHE_MIDDLEWARE_SECONDS = 600 # 10 minutes
|
||||
CACHE_MIDDLEWARE_KEY_PREFIX = "feedvault"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue