Django compilemessages не применяет изменения в производстве

В настоящее время я разрабатываю веб-приложение, используя django + postgres + nginx + docker, все уже работает. Сейчас я разработал функцию, которая позволяет изменять файл перевода (.po), будучи залогиненным как администратор. Это работает в моей среде разработки, а также при выводе командных строк кажется, что приложение применяет изменения внутри образа докера. но когда я использую call_command("compilemessages), изменения не применяются. Файл .po был обновлен, но не запись на самом сайте.

Так что логика работает, но я хочу, чтобы изменения устанавливались постоянно при изменении. Является ли это проблемой кэширования Nginx или я упускаю что-то важное?

Вот мои файлы:

docker-compose.prod.yml:

services:
  web:
    build: ./app
    command: bash -c "python manage.py makemigrations && python manage.py migrate && gunicorn --timeout 120 wtc_research.wsgi:application --bind 0.0.0.0:8000"
    # command: bash -c "python manage.py makemigrations && python manage.py migrate && waitress-serve --listen=*:8000 wtc_research.wsgi:application"
    volumes:
      - static_volume:/staticfiles/
      - locale_volume:/locale/
    restart: always
    ports:
      - "8000:8000"
    expose:
      - "8000"
    env_file:
      - ./.env.prod
    depends_on:
      - db
  db:
    image: postgres:16
    volumes:
      - postgres_data:/var/lib/postgresql/data/
      - ./django_dump.sql:/home/django_dump.sql
      - ./translated_text.sql:/home/translated_text.sql
      - ./init.sql:/docker-entrypoint-initdb.d/init.sql
    restart: always
    env_file:
      - ./.env.prod.db
  nginx:
    build: ./nginx
    volumes:
      - static_volume:/staticfiles/
    restart: always
    ports:
      - "80:80"
      - "443:443"
    depends_on:
      - web
volumes:
  postgres_data:
  static_volume:
  locale_volume:

Я не уверен, что делать, также просматривая документацию django, я не нашел ничего связанного с этим. Есть ли у кого-нибудь идея. Цель - маска POFIleEditor в моем веб-приложении.

Заранее спасибо!

Логика работает, так как на моей локальной разработке нет ошибок, также в контейнере я вижу, что он тоже работает, но он просто не отображается на моем сайте. Кроме того, изменения остаются в контейнере, а файл не обновляется в моем репозитории. Это можно решить путем монтирования тома, но я не могу найти решение для изменений живого перевода.

Возможно, вам нужно перезапустить WSGI-сервер, чтобы перезагрузить содержимое, на dev env это может происходить автоматически, так как Django Server перезапускается при изменении файлов через часы

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