简单记录win10下docker的安装配置
这个过程主要还是参考上篇提到的使用docker来实现libreoffice并发转换docx文件为pdf这篇文章。
不过原文是在centos下建docker,本文记录了在win10下的安装配置过程。
1、在官网上下载安装docker软件。
此过程略过不表。
2、在Docker Desktop设置共享盘
settings->Resources->FILE SHARING->选择共享文件夹要放置的盘
3、下载centos docker镜像
docker pull centos
4、启动centos的docker镜像
docker run -it centos /bin/bash 安装的是centos8
5、进入docker容器
#docker run -it centos -v /root/install:/root/install /bin/bash #docker run -it centos -v E:/Docker_share:/share /bin/bash 这个莫名报错
docker run -v “e:\Docker_share”:/share -it centos /bin/bash
安装libreoffice、中文字体库等所需的软件
yum install libreoffice-writer.x86_64
yum groupinstall “Fonts”
yum groupinstall “Input Methods”
把微软雅黑等字体复制到/usr/share/fonts/chinese/ 刷新字体: fc-cache -fv 查看已经安装的中文字体: fc-list :lang=zh
安装中文语言包(centos8):yum install langpacks-zh_CN.noarch 然后通过命令:locale -a 查看结果。
修改设置 sed -i ‘s/en_US/zh_CN/’ /etc/locale.conf
========================
6、生成安装了libreoffice、中文字体等软件的docker 镜像
docker commit CONTAINER_ID libreofficedocker
其中:
| CONTAINER_ID是docker ps -a得到了容器id docker ps -a | grep “centos” | awk ‘{print $1}’ |
libreofficedocker 是我们生成的docker镜像
E:>docker commit 4500165c3350 libreofficedocker
E:\>docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
libreofficedocker latest 75cb2d88753e About a minute ago 1.85GB
centos latest 470671670cac 3 months ago 237MB
hello-world latest bf756fb1ae65 3 months ago 13.3kB
7、启动我们新生成的docker 镜像
根据并发转换docx为pdf文件的需要,基于我们自己生成的docker镜像,启动多个docker的容器,利用docker容器对资源的隔离,调用不同容器中的soffice来并发处理不同的pdf文件
docker run –name office1 -it -d -v E:/Docker_share/pdf:/share/pdf libreofficedocker
docker run –name office2 -it -d -v E:/Docker_share/pdf:/share/pdf libreofficedocker
镜像文件与宿主机的共享目录为E:/Docker_share/pdf和E:/Docker_share/pdf,在共享目录中放入要转换的docx文件
docker exec -it office1 /bin/bash
8、调用soffice命令行,将docx转为pdf
docker exec -it office1 /bin/soffice –headless –convert-to pdf ‘/share/pdf/xx.docx’ –outdir /share/pdf
docker exec -it office2 /bin/soffice –headless –convert-to pdf ‘/share/pdf/xx.docx’ –outdir /share/pdf
以上命令行放到程序代码中,同时可以在多个线程中并发调用。
