Docker for Win10中文乱码问题

environmentwin10  docker+centos7+nginx1.9.9

issue:在docker运行nginx(centos)volume本地html目录挂载到nginxhtml目录(index.html包含中文)container查看index.html中文乱码;在宿主机查看http://localhost 中文乱码

分析:docker基础镜像不支持中文;Windows控制台不支持utf-8

 

一、Docker容器本身就是中文乱码:

docker提供的image,需要设置中文编码l(en_US.UTF-8zh_CN.UTF-8),有的需要在安装中文语言包ocaledef -c -f UTF-8 -i zh_CN zh_CN.utf-8(依赖:kde-l10n-Chinese  glibc-common),我把运行成功的构建放出来,供大家参考:

FROM centos:7.5.1804
MAINTAINER sonny.zhang <758896823@qq.com>
ENV PATH /usr/local/nginx/sbin:$PATH
RUN yum install -y wget lftp vim* kde-l10n-Chinese glibc-common gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
ADD nginx-1.9.9.tar.gz /usr/local
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf-8
ENV LC_ALL zh_CN.UTF-8
RUN mkdir -p /usr/local/nginx
WORKDIR /usr/local/nginx
RUN cd ../nginx-1.9.9 && ./configure --prefix=/usr/local/nginx  && make && make install
EXPOSE 80
ENTRYPOINT ["nginx", "-g", "daemon off;"]

 

二、只是Win10控制台中文乱码:

1.运行CMD

2.输入 CHCP,回车查看当前的编码;

3.输入CHCP 65001,回车;

posted @ 2018-11-08 17:02  SonnyZhang  阅读(2590)  评论(0编辑  收藏  举报