forked from erp-dev/erp
fix: redis for worker
This commit is contained in:
@@ -122,6 +122,9 @@ services:
|
||||
DB_NAME: flower
|
||||
DB_USER: postgres
|
||||
DB_PASSWORD: postgres
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: redis
|
||||
CACHE_PORT: "6379"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: rabbitmq
|
||||
CELERY_RESULT_HOST: redis
|
||||
@@ -156,6 +159,9 @@ services:
|
||||
DB_NAME: flower
|
||||
DB_USER: postgres
|
||||
DB_PASSWORD: postgres
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: redis
|
||||
CACHE_PORT: "6379"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: rabbitmq
|
||||
CELERY_RESULT_HOST: redis
|
||||
|
||||
@@ -104,6 +104,9 @@ services:
|
||||
DB_NAME: "${DB_NAME:-flower}"
|
||||
DB_USER: "${DB_USER:-postgres}"
|
||||
DB_PASSWORD: "${DB_PASSWORD:-postgres}"
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: ${CACHE_HOST:-redis}
|
||||
CACHE_PORT: "${CACHE_PORT:-6379}"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: ${CELERY_BROKER_HOST:-rabbitmq}
|
||||
CELERY_BROKER_PORT: "${CELERY_BROKER_PORT:-5672}"
|
||||
@@ -143,6 +146,9 @@ services:
|
||||
DB_NAME: "${DB_NAME:-flower}"
|
||||
DB_USER: "${DB_USER:-postgres}"
|
||||
DB_PASSWORD: "${DB_PASSWORD:-postgres}"
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: ${CACHE_HOST:-redis}
|
||||
CACHE_PORT: "${CACHE_PORT:-6379}"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: ${CELERY_BROKER_HOST:-rabbitmq}
|
||||
CELERY_BROKER_PORT: "${CELERY_BROKER_PORT:-5672}"
|
||||
|
||||
@@ -126,6 +126,9 @@ services:
|
||||
DB_NAME: flower
|
||||
DB_USER: postgres
|
||||
DB_PASSWORD: postgres
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: redis
|
||||
CACHE_PORT: "6379"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: rabbitmq
|
||||
CELERY_RESULT_HOST: redis
|
||||
@@ -158,6 +161,9 @@ services:
|
||||
DB_NAME: flower
|
||||
DB_USER: postgres
|
||||
DB_PASSWORD: postgres
|
||||
# 缓存(Redis)连接:容器内用服务名访问
|
||||
CACHE_HOST: redis
|
||||
CACHE_PORT: "6379"
|
||||
# Celery 连接配置:容器内用服务名访问
|
||||
CELERY_BROKER_HOST: rabbitmq
|
||||
CELERY_RESULT_HOST: redis
|
||||
|
||||
@@ -94,7 +94,18 @@ MIDDLEWARE = [
|
||||
|
||||
原因:`Product` 模型没有设置 `unique_together = ('merchant', 'human_id')` 约束,多同步源可能导致重复数据,`get_or_create` 会抛出 `MultipleObjectsReturned` 错误。
|
||||
|
||||
### 9. 修复 Docker Compose 中 Celery 服务缺少 CACHE_HOST 配置
|
||||
|
||||
在以下文件中为 `celery_worker` 和 `celery_beat` 服务添加 `CACHE_HOST` 和 `CACHE_PORT` 环境变量:
|
||||
|
||||
- `docker-compose.yml`
|
||||
- `docker-compose.dev.yml`
|
||||
- `docker-compose.prod.yml`
|
||||
|
||||
问题原因:`settings.py` 中 `CACHE_HOST` 默认值为 `localhost`,在容器化环境中无法连接到 Redis 服务。
|
||||
|
||||
## 待办事项
|
||||
|
||||
- [ ] 执行数据库迁移 (`uv run python manage.py migrate`)
|
||||
- [ ] 测试中间件功能
|
||||
- [ ] 重启 Docker 容器使配置生效
|
||||
Reference in New Issue
Block a user