Ubuntu 在docker映像中生成所有区域设置

Ubuntu 在docker映像中生成所有区域设置,ubuntu,docker,debian,locale,dockerfile,Ubuntu,Docker,Debian,Locale,Dockerfile,如何在基于debian/ubuntu的docker映像中生成所有区域设置 locale gen不接受此处描述的-A/-all选项: dpkg reconfigure locales有一个选项可以在交互模式下生成所有locale,但Dockerfile中没有此选项 仅仅生成英语或一组固定的语言是不够的,听起来也不正确。在/etc/locale.gen中,我发现了一个提示,即/usr/share/i18n/SUPPORTED列出了所有支持的语言环境代码。从和开始,将所有需要的代码添加到/etc/lo

如何在基于debian/ubuntu的docker映像中生成所有区域设置

locale gen
不接受此处描述的
-A
/
-all
选项:

dpkg reconfigure locales
有一个选项可以在交互模式下生成所有locale,但Dockerfile中没有此选项


仅仅生成英语或一组固定的语言是不够的,听起来也不正确。

/etc/locale.gen
中,我发现了一个提示,即
/usr/share/i18n/SUPPORTED
列出了所有支持的语言环境代码。从和开始,将所有需要的代码添加到
/etc/locale.gen
并运行
locale gen
。这就是我的解决方案:

RUN cp /usr/share/i18n/SUPPORTED /etc/locale.gen
RUN locale-gen

只需通过docker容器中的包
locales all
安装预编译的语言环境数据。这也减少了构建时间,因为不必生成区域设置,请参见
/var/lib/dpkg/info/locales.postinst
中的代码

runecho“locales locales/locales\u to_be\u generated multiselect All locales”| debconf set selections&&dpkg reconfigure--frontend=noninteractive locales
这样的技巧对我也不起作用