는 나는이 Dockerfile있어 :Docker가 env 변수를 올바르게 설정하지 못 했습니까?
FROM ubuntu:latest
RUN apt-get update && apt-get install -y \
curl \
python3-dev \
python3-setuptools \
python3-pip
RUN rm -rf /var/lib/apt/lists/* && \
apt-get clean
ADD . /usr/src/index-server
WORKDIR /usr/src/index-server
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt
EXPOSE 8000
ENV LC_CTYPE=C.UTF-8
ENV FLASK_APP=app_server.py
CMD /usr/local/bin/flask run --host=0.0.0.0
이 잘 구축합니다. 하지만 그것을 실행하려고하면 파이썬 오류가 발생합니다.이 오류는 로케일 값을 잘못 설정하도록 추적합니다.
내 호스트 시스템에서에게 locale | grep -E 'LC_ALL|LC_CTYPE|LANG'
반환 :
LANG="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_ALL=
하지만 난 고정 표시기 인스턴스 (docker run -t 657c402ec253 locale | grep -E 'LC_ALL|LC_CTYPE|LANG'
), 나는이 수와 동일 할 때 :
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_ALL=
I가 고정 표시기의 -e
플래그를 사용하는 경우 env 변수를 설정하면 올바르게 작동합니다.
$ docker run -e LC_CTYPE=C.UTF-8 -t 657c402ec253 locale | grep -E 'LC_ALL|LC_CTYPE|LANG'
LANG=
LANGUAGE=
LC_CTYPE=C.UTF-8
LC_ALL=
무슨 일 이니?