Невозможно сгенерировать django .po файлы из docker -compose - PullRequest
1 голос
/ 25 апреля 2020

Я использую Django 3.0.5 внутри docker -контейнера, связанного с Postgres -контейнером.

Я хотел бы создать файлы django .po, но когда Я пытаюсь использовать эту команду:

docker-compose run web python3 manage.py makemessages -l en

Я получил эту ошибку:

CommandError: Не удается найти msguniq. Убедитесь, что у вас установлены инструменты GNU gettext 0.15 или более поздней версии.

Между тем, когда я получаю прямой доступ к своему контейнеру, он работает: (Здесь ad2b13f2fe87 - это идентификатор моего django -контейнера. )

docker exec -it ad2b13f2fe87 bash

root@ad2b13f2fe87:/code# gettext --version
gettext (GNU gettext-runtime) 0.19.8.1
...

root@ad2b13f2fe87:/src# python3 manage.py makemessages -l en
processing locale en

Может кто-нибудь объяснить мне, в чем проблема? Спасибо.

1 Ответ

1 голос
/ 26 апреля 2020

Не важно, я обнаружил проблему.

По умолчанию изображение Python, которое я использую как Django, не обновляется.

В моем Python (Django) Dockerfile, я только что добавил:

RUN apt update
RUN apt install gettext -y

И в моем requirements.txt я также добавил это:

# i18n
python-gettext==4.0 

Теперь команда docker-compose run <python-django-service> python3 manage.py makemessages -l en работает и мой django.po файлы сгенерированы правильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...