运行Python容器时Docker“不受支持的语言环境设置”

时间:2019-02-21 08:57:50

标签: python python-3.x docker

当我在docker中尝试“ docker run -p 8050:8050 app1”时,我得到:

Traceback (most recent call last):
File "app1.py", line 6, in <module>
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
File "/usr/local/lib/python3.6/locale.py", line 598, in setlocale
return _setlocale(category, locale)

我的dockerfile看起来像这样:

FROM python:3.6
USER root
WORKDIR /app
ADD . /app
RUN apt-get update && apt-get -y install locales
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
RUN pip install --trusted-host pypi.python.org -r requirements.txt
EXPOSE 8050
ENV NAME World
CMD ["python", "app1.py"]

如何在没有出现此错误的情况下在app1.py中设置本地语言? 预先感谢

PS:已经重新启动Docker。

1 个答案:

答案 0 :(得分:0)

对我有用

RUN apt-get install -y locales
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/'        /etc/locale.gen \
 && sed -i -e 's/# pt_BR.UTF-8 UTF-8/pt_BR.UTF-8 UTF-8/' /etc/locale.gen \
 && locale-gen