在讲代码部署到容器时会遇到编码问题,例如Python在进行文件操作时,一般我们都是用UTF-8来处理。

我们先来看看容器镜像所支持的编码,找个Debian看看。

$ docker run --rm -it debian:8
root@bea398634b67:/# locale
LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
root@5cf1b52f1181:/# locale -a
C
C.UTF-8
POSIX

运行完成后我们看到可以使用C.UTF-8,并且默认为POSIX,所以我们需要在我们定制的Dockerfile中加入环境变量设置就可以搞定我们自己的镜像了。

在Dockerfile中加入

ENV LANG=C.UTF-8

[ 编辑 | 历史 ]
最近由“jilili”在“2020-06-20 02:25:00”修改