您好,登錄后才能下訂單哦!
這篇“docker web中文亂碼如何解決”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“docker web中文亂碼如何解決”文章吧。
docker web中文亂碼的解決辦法:1、使用locale查看當前容器的系統使用的字符集;2、使用“locale -a”查看當前容器的系統支持可以使用的字符集;3、修改“/etc/profile”,添加系統變量LANG即可。
解決docker容器中文字符亂碼問題
在命令行中,輸入中文出現亂碼或者鍵入錯誤的情況:
這里我想輸入:”中文“,但是出現亂碼。
并且,我在之前已經創建好鏡像,通過鏡像生成了容器。
1.使用locale查看當前容器的系統使用的字符集。
2.使用locale -a查看當前容器的系統支持可以使用的字符集。
3.在一些博客中,都建議修改/etc/profile,添加系統變量LANG等。
1)/etc/profile:此文件為系統的每個用戶設置環境信息,當用戶第一次登錄時,該文件被執行.
并從/etc/profile.d目錄的配置文件中搜集shell的設置.
注:在這里我們設定是為所有用戶可使用的全局變量。
2)/etc/bashrc:為每一個運行bash shell的用戶執行此文件.當bash shell被打開時,該文件被讀取.
但是可以看出,/etc/profile中只有當用戶第一次登陸時,被執行。所以當你在該文件中修改后,并且docker commit后,再次通過更新后的進行運行容器,并不會生效。
所以,在這里,我修改/etc/bashrc,來更新系統字符集變量:
修改后,記得要生效: 再次通過locale查看是否更新了系統字符集: 最后,可以看出能夠正常在命令行中輸入中文: 最后的最后,別忘記提交鏡像更新:你可以選擇覆蓋當前鏡像,只要倉庫名:標簽名和你要覆蓋的一樣就行 再次通過更新后的鏡像運行一個新的容器: 可以看出,中文能夠正常輸入了~export LANG="C.UTF-8"
export LANGUAGE="C.UTF-8"
export LC_ALL="C.UTF-8"
source /etc/bash.bashrc
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# 中文
docker commit -m="run command" -a="wkn" 7bfce1075a4b wkn/pattern-ai:torch_1.11.0_v
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# 中文
以上就是關于“docker web中文亂碼如何解決”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。