Dockercentos7中国のカオス問題の解決策

docker centos7イメージを使用してspringbootプロジェクトをデプロイしたところ、ログファイルに文字化けした文字が見つかりました。この問題は主に、鏡の中の中国語のサポートの欠如によって引き起こされます。以下は具体的な解決策です。

コンテナ名またはIDに従ってコンテナを入力します。

docker exec -it container_name /bin/bash

ロケールを実行して、現在の環境で使用されている言語を確認します。

[ root@f6179ac439f2 /]# locale
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

locale -aを実行して、現在のシステムでサポートされている言語パックを表示します。

[ root@f6179ac439f2 /]# locale -a
C
POSIX
en_US.utf8

中国のzh_CN.utf8はデフォルトでサポートされていないことがわかります。次に、対応する言語パックのインストールを開始します。

言語パックのインストール(centos 7用):

yum install kde-l10n-Chinese -y

gitbcパッケージを更新します(パッケージの機能の一部がミラーキャストされないようにするため)。

yum reinstall glibc-common -y

システム言語パックを設定します。

localedef -c -f UTF-8-i zh_CN zh_CN.utf8

/ etc / profileファイルに追加:

export LC_ALL=zh_CN.UTF-8

再コンパイル:

source /etc/profile

/etc/locale.confを設定し、以下を追加します。

LANG="zh_CN.UTF-8"

次に、ミラーを再起動すると、文字化けの問題が解決されます。ロケールが再度実行されても、表示されるコードはPOSIXのままですが、ログの文字化けの問題は発生しなくなりました。

上記の方法は、ドッカーイメージとコンテナーが既に存在する状況を解決するためのものです。イメージの作成中にこの問題を解決する場合は、Dockerfileに次の構成を追加できます。

RUN yum install kde-l10n-Chinese -y
RUN yum install glibc-common -y
RUN localedef -c -f UTF-8-i zh_CN zh_CN.utf8
RUN export LANG=zh_CN.UTF-8
RUN echo "export LANG=zh_CN.UTF-8">>/etc/locale.conf
ENV LANG zh_CN.UTF-8
ENV LC_ALL zh_CN.UTF-8

Recommended Posts

Dockercentos7中国のカオス問題の解決策
CentOS7とDockerの構成中国語の文字セットの問題
Dockerのインストール(CentOS7のインストール)
Centos7はDockerをインストールします
Centos7インストールdocker18
centos7インストールドッカー
CentOS7ドッカーのインストール
CentOS6はDockerをインストールします
Centos8はDockerをインストールします
Centos8がdockerをインストールできないという問題を解決します
CentOS8.0はdockerエラーをインストールします
CentOS8-dnfインストールドッカー
centos6.5にDockerをインストールします
DockerCentOSのインストール方法
centos7インストールkeepalived問題
CentOS7はDockerCEをインストールします
Centos7dockerのインストールの詳細
Centos6.5でドッカー環境を構築する
Centos7にdockertransferをインストールします
Centosシステムにdockerをインストールします
DockerのCentOS環境インストール
centos7へのDockerEEのインストール