如何在基于debian / ubuntu的docker镜像中生成所有语言环境?
locale-gen
不接受此处所述的-A
/ --all
选项:http://www.linuxhowtos.org/manpages/8/locale-gen.htm。
dpkg-reconfigure locales
可以选择在交互模式下生成所有语言环境,但这在Dockerfile中不可用。
仅仅生成英语或一组固定的语言是不够的,听起来不正确。
答案 0 :(得分:3)
在/etc/locale.gen
我找到了提示,/usr/share/i18n/SUPPORTED
列出了所有支持的区域设置代码。自https://people.debian.org/~schultmc/locales.html和https://wiki.debian.org/Locale起,将所有想要的代码添加到/etc/locale.gen
并运行locale-gen
就足够了。所以这是我的解决方案:
RUN cp /usr/share/i18n/SUPPORTED /etc/locale.gen
RUN locale-gen
答案 1 :(得分:0)
只需在docker容器中通过包locales-all
安装预编译的语言环境数据。这也减少了构建时间,因为不需要生成区域设置,请参阅/var/lib/dpkg/info/locales.postinst
中的代码。
像RUN echo 'locales locales/locales_to_be_generated multiselect All locales' | debconf-set-selections && dpkg-reconfigure --frontend=noninteractive locales
这样的技巧也不适合我。