在命令行中,輸入中文出現(xiàn)亂碼或者鍵入錯(cuò)誤的情況:
這里我想輸入:”中文“,但是出現(xiàn)亂碼。
并且,我在之前已經(jīng)創(chuàng)建好鏡像,通過(guò)鏡像生成了容器。
1.使用locale查看當(dāng)前容器的系統(tǒng)使用的字符集。
2.使用locale -a查看當(dāng)前容器的系統(tǒng)支持可以使用的字符集。
3.在一些博客中,都建議修改/etc/profile,添加系統(tǒng)變量LANG等。
1)/etc/profile:此文件為系統(tǒng)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時(shí),該文件被執(zhí)行.
并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置.
注:在這里我們?cè)O(shè)定是為所有用戶可使用的全局變量。
2)/etc/bashrc:為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開(kāi)時(shí),該文件被讀取.
但是可以看出,/etc/profile中只有當(dāng)用戶第一次登陸時(shí),被執(zhí)行。所以當(dāng)你在該文件中修改后,并且docker commit后,再次通過(guò)更新后的進(jìn)行運(yùn)行容器,并不會(huì)生效。
所以,在這里,我修改/etc/bashrc,來(lái)更新系統(tǒng)字符集變量:
export LANG="C.UTF-8"
export LANGUAGE="C.UTF-8"
export LC_ALL="C.UTF-8"
修改后,記得要生效:
source /etc/bash.bashrc
再次通過(guò)locale查看是否更新了系統(tǒng)字符集:
root@7bfce1075a4b:/workspace# locale
LANG=C.UTF-8
LANGUAGE=C.UTF-8
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=C.UTF-8
最后,可以看出能夠正常在命令行中輸入中文:
root@7bfce1075a4b:/workspace# 中文
最后的最后,別忘記提交鏡像更新:你可以選擇覆蓋當(dāng)前鏡像,只要倉(cāng)庫(kù)名:標(biāo)簽名和你要覆蓋的一樣就行
docker commit -m="run command" -a="wkn" 7bfce1075a4b wkn/pattern-ai:torch_1.11.0_v
再次通過(guò)更新后的鏡像運(yùn)行一個(gè)新的容器:文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-437986.html
wkn@MightyDragon:~$ docker commit -m="run command" -a="wkn" 7bfce1075a4b wkn/pattern-ai:torch_1.11.0_v1
sha256:18b066686fe87306bb1b09e2e98c89af04a23ec6054edbf3cc73bd1dc72826a7
wkn@MightyDragon:~$ docker run -v /home/wkn:/home/wkn -it --gpus '"device=0,1"' 18b066686fe8
root@05c9c8706296:/workspace# 中文
可以看出,中文能夠正常輸入了~文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-437986.html
到了這里,關(guān)于解決docker容器中文字符亂碼問(wèn)題的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!