1、默認官方的centos鏡像不支持中文,比如touch一個包含中文名字的文件,文件名會顯示???.doc
2、libreoffice 安裝及測試
我的Dockerfile文件內容如下:
FROM centos # 鏡像源,這里使用的是centos MAINTAINER "shilin@datahorizon.cn" # 維護人信息,可刪去 RUN yum install libreoffice-writer.x86_64 -y \ && yum groupinstall "Fonts" -y \ && yum groupinstall "Input Methods" -y \ # 上面三條指令是安裝libreoffice程序及支持字體 && rm -rf /etc/localtime \ && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ && yum -y install kde-l10n-Chinese \ && yum -y reinstall glibc-common && localedef -c -f UTF-8 -i zh_CN zh_CN.utf8 \ # 這幾條是添加中文支持 && yum clean all # 最后清理yum緩存 ENV LC_ALL zh_CN.utf8 # 設置中文支持環境
新建一個空白文件夾,名字隨意,將 Dockerfile 移到這里,然后執行
- docker build -t libreoffice:01 .
等待執行完成,查看當前擁有的鏡像,執行
- docker images
結果
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
libreoffice 01 caaa911e050a 16 minutes ago 1.122 GB
之后進行測試,首先掛載數據卷進入容器
- docker run -it -v ~/file_dir/:/data libreoffice:01 bash
這里file_dir是要轉換文件所在目錄,然后進行轉換
- soffice --headless --convert-to txt 測試.doc
轉換完的文件名為 測試.txt ,然后cat 查看內容即可