Bash Docker Jenkins从属错误字符编码

Bash Docker Jenkins从属错误字符编码,bash,docker,jenkins,character-encoding,jenkins-slave,Bash,Docker,Jenkins,Character Encoding,Jenkins Slave,我使用的是Jenkins slave docker镜像,它基于ubuntu:14.04 我想使用一个包含UTF-8字符的字符串参数 类似于的字符(匈牙利字符)将被替换为问号 正如票上提到的,我试图将-e LANG=hu_-hu.UTF-8和bash-c“locale gen hu_-hu.UTF-8”传递给docker。我还将export LANG=hu_-hu.UTF-8放入Jenkins用户的。bashrc字符仍然被替换。我还尝试了en_US.UTF-8 我也试着对詹金斯的工作做同样的事情:

我使用的是Jenkins slave docker镜像,它基于ubuntu:14.04

我想使用一个包含UTF-8字符的字符串参数

类似于
的字符(匈牙利字符)将被替换为
问号

正如票上提到的,我试图将
-e LANG=hu_-hu.UTF-8
bash-c“locale gen hu_-hu.UTF-8”
传递给docker。我还将export LANG=hu_-hu.UTF-8
放入Jenkins用户的
。bashrc
字符仍然被替换。我还尝试了
en_US.UTF-8

我也试着对詹金斯的工作做同样的事情:

+ export LANG=hu_HU.UTF-8
+ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=hu_HU.UTF-8
LANGUAGE=
LC_CTYPE="hu_HU.UTF-8"
LC_NUMERIC="hu_HU.UTF-8"
LC_TIME="hu_HU.UTF-8"
LC_COLLATE="hu_HU.UTF-8"
LC_MONETARY="hu_HU.UTF-8"
LC_MESSAGES="hu_HU.UTF-8"
LC_PAPER="hu_HU.UTF-8"
LC_NAME="hu_HU.UTF-8"
LC_ADDRESS="hu_HU.UTF-8"
LC_TELEPHONE="hu_HU.UTF-8"
LC_MEASUREMENT="hu_HU.UTF-8"
LC_IDENTIFICATION="hu_HU.UTF-8"
LC_ALL=    
输出是相同的

谢谢。

我找到了解决方案:

bash -c "locale-gen hu_HU && locale-gen hu_HU.UTF-8 && update-locale &&  echo 'export LANG=hu_HU.UTF-8' > /jenkins/.bashrc"
另一种(可能更干净)的解决方案是修改作业配置,以便将环境变量注入到构建作业中

在“生成环境”部分中,在“属性内容”字段中添加环境变量

我认为这是一个更清洁的解决方案,因为本地jenkins帐户没有受到污染,jenkins安装负责维护构建环境;最好是当您有>1个从机在上维护本地帐户时。。。
此解决方案在Jenkins 1.613版时是准确的

区域设置应安装在Jenkins主机()上,而不是您,我根据以下链接找到了解决方案:)