溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》
  • 首頁(yè) > 
  • 教程 > 
  • 服務(wù)器 > 
  • Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

發(fā)布時(shí)間:2021-02-07 11:28:44 來(lái)源:億速云 閱讀:840 作者:小新 欄目:服務(wù)器

這篇文章將為大家詳細(xì)講解有關(guān)Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

一、問(wèn)題描述:

在Linux環(huán)境Centos操作系統(tǒng)下,通過(guò)Docker下載Jenkins鏡像后創(chuàng)建了容器,并且通過(guò)服務(wù)器IP+端口訪問(wèn)Jenkins地址,進(jìn)行相關(guān)的配置,然后創(chuàng)建任務(wù)job來(lái)構(gòu)建跑java+selenium自動(dòng)化測(cè)試腳本,目前構(gòu)建Success,唯一不足之處是打印的日志出現(xiàn)就了亂碼,如下圖:

(備注:執(zhí)行機(jī)就是jenkins本身,同一臺(tái)機(jī)器)

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

二、排查Jenkins設(shè)置

Jenkins系統(tǒng)設(shè)置查看全局屬性中語(yǔ)言部分

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

2.Jenkins詳細(xì)信息(瀏覽器Jenkins地址后面加上/systemInfo)

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦 Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

三、代碼log日志編碼方式

1.打印的日志確認(rèn)是否是utf-8,已確認(rèn)是

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

四、 Linux服務(wù)器語(yǔ)言信息

1.查看宿主機(jī)語(yǔ)言配置,輸入命令:locale -a

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

2.查看/.vimrc

此處沒(méi)敢改,因?yàn)椴淮_會(huì)影響范圍,只是在CSDN找的文章

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

這塊不是很明白,網(wǎng)上給出的答案是:

https://blog.csdn.net/u010189459/article/details/38338735

大概的意思是在vimrc里面encoding可同時(shí)做這幾項(xiàng)設(shè)置:

set encoding=utf-8 set langmenu=zh_CN.UTF-8 language message zh_CN.UTF-8

五、終極排查

既然Jenkins系統(tǒng)設(shè)置、宿主機(jī)的語(yǔ)言都已經(jīng)排查,現(xiàn)在開(kāi)始排查容器

1.進(jìn)入到Jenkins容器里面

docker exec -it 容器ID /bin/bash

查看語(yǔ)言

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

然后再輸入

export LC_ALL="C.UTF-8"

在/etc/bash.bashrc里面末尾寫(xiě)入,然后source /etc/bash.bashrc然后發(fā)現(xiàn)沒(méi)有vim,算了不折騰了。

lc_all實(shí)際上就是給上面的所有變量賦值,效果一樣,不過(guò)試試也無(wú)妨,一般來(lái)說(shuō)沒(méi)有,docker本身就有完整的操作系統(tǒng),跟宿主機(jī)沒(méi)關(guān)系。

2.進(jìn)入到Chrome瀏覽器容器里面

set LC_ALL="C.UTF-8"

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

3.然后Jenkins系統(tǒng)設(shè)置修改全局屬性,將之前的LANG = zh_CN .UTF-8改成LANG = C.UTF-8 原因是:目前市場(chǎng)上做服務(wù)器基本被centos和debian占據(jù)吧,centos依靠redhat,debian自源,centos源于紅帽,各種補(bǔ)丁以及服務(wù)更完善些,centos做服務(wù)器也較多吧,自動(dòng)化部門(mén)我沒(méi)猜錯(cuò)的話jenkins所在的宿主機(jī)用的是debian系統(tǒng)不是centos,因?yàn)閐ebian中l(wèi)ocale是支持zh_CN.UTF-8,centos支持C.UTF-8

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

最后重啟下jenkins服務(wù)(jenkins地址后加上/restart),然后啟動(dòng)任務(wù)查看jenkins控制臺(tái)的日志!

Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦

后記,可能是容器里面需要設(shè)置下語(yǔ)言,jenkins系統(tǒng)設(shè)置全局屬性語(yǔ)言LANG = C.UTF-8有關(guān)系。

關(guān)于“Docker環(huán)境搭建Jenkins在構(gòu)建任務(wù)時(shí)控制臺(tái)日志出現(xiàn)中文亂碼怎么辦”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI