Контейнер Docker игнорирует не-ASCII символы - PullRequest
0 голосов
/ 19 декабря 2018

Я использую контейнер Docker на основе python:3-stretch.В моем коде на python, если я выполняю команду, подобную print("båt"), норвежский специальный символ «å» просто пропускается, а вывод - просто bt.Я не уверен, что сам контейнер имеет проблемы с использованием специальных символов моей страны или интерпретатор python.

В моем файле docker-compose.yml я добавил эти переменные окружения в noпомог:

environment:
  - LANG=nb_NO.UTF-8
  - LC_ALL=nb_NO.UTF-8
  - PYTHONIOENCODING=utf-8

Я также добавил это в свой Dockerfile, но все еще ничего:

RUN apt-get update
RUN apt-get -y install locales
RUN echo nb_NO.UTF-8 UTF-8 > /etc/locale.gen
RUN locale-gen nb_NO.UTF-8

Более того, я даже пытался жестко кодировать локаль в коде Python:

import locale
locale.setlocale(locale.LC_ALL, 'nb_NO.UTF-8')
print("båt")

Тем не менее, вывод bt.

Любая помощь при отладке, будет оценена!

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