关于docker:Docker打包制作openoffice镜像Dockerfile方式并处理中文乱码

46次阅读

共计 1827 个字符,预计需要花费 5 分钟才能阅读完成。

鉴于目前,云原生 k8s 的部署形式,越来越宽泛。那咱们也应该要应用 docker 的形式部署 openoffice。
这个部署的第一步,就是要有一个 docker 镜像,那咱们明天就来讲讲,如何制作 openoffice 的 docker 镜像包。
当然啦,openoffice 的 docker 镜像包,咱们能够从 docker hub 仓库,间接拉他人制作好的镜像包。

docker hub 地址
docker pull umnelevator/openoffice:latest

以上,是我看到 pull 次数最多的镜像,不晓得是不是官网的哈!
而且这个也比拟久了 3 年前 (目前 2022-06-16)、也不晓得外面有无解决中文乱码等问题!
所以咱们这里,还是本人来制作一个属于咱们本人的 openoffice,docker 镜像包。
开干!!!^_^

2.openoffice 镜像包制作
2.1 环境筹备
Apache_OpenOffice_4.1.10_Linux_x86-64_install-rpm_zh-CN.tar.gz 下载

下载地址: openoffice , 抉择 Linux 64 位 RPM 包,简体中文,默认最新版本,而后点击“Download full installation”下载指定的安装包。

这里,咱们抉择 4.1.10 版本
目前最新版本 4.1.12(目前 2022-06-16)

下载好如下:

2.2 字体文件筹备

在 windows 上 C:\Windows\Fonts 目录下,将字体拷贝到 fonts 目录下

2.3lib 文件筹备

这些是为了解决,启动 openoffice 报错,所须要的 lib 文件。
能够在 linux 环境下,拷贝这些文件。
具体的下载地址:点击下载

2.4Dockerfile 文件编写
FROM openjdk:8u332-jdk

1. 增加到容器,会帮咱们主动解压

ADD Apache_OpenOffice_4.1.10_Linux_x86-64_install-rpm_zh-CN.tar.gz /tmp/

2. 装置 openoffice

RUN cd /tmp && \
yum install -y zh-CN/RPMS/*.rpm && \
yum clean all

3. 将咱们筹备的 fonts 字体,拷贝到 /usr/share/fonts 上面

RUN mkdir -p /usr/share/fonts
COPY ./fonts /usr/share/fonts
RUN cd /usr/share/fonts/ && \
chmod -R 755 /usr/share/fonts && \

4. 装置字体,和 ”X Window System”

yum install mkfontscale fontconfig -y && \
yum groupinstall “X Window System” -y && \
mkfontscale && \
mkfontdir && \
fc-cache -fv

5. 拷贝缺失的 lib

COPY ./lib /opt/openoffice4/program

6. 拷贝启动脚本,并执行启动 openoffice

COPY ./startServer.sh /opt/openoffice4/
ENTRYPOINT [“sh”, “/opt/openoffice4/startServer.sh”]
复制代码
2.5startServer 脚本编写

!/bin/bash

source /etc/profile

cd /opt/openoffice4

设置 HOST

if [[$OPENOFFICE_HOST != “”]]; then
export host=$OPENOFFICE_HOST
else
export host=”0.0.0.0″
fi

设置 PORT

if [[$OPENOFFICE_PORT != “”]]; then
export port=$OPENOFFICE_PORT
else
export port=”8100″
fi

启动 openoffice

program/soffice -headless -accept=”socket,host=”$host”,port=”$port”;urp;” -nofirststartwizard

echo ‘openoffice start success’
复制代码
2.6 打包公布

vi build.sh

docker build -t llsydn/openoffice:4.1.10 -f ./Dockerfile .
docker push llsydn/openoffice:4.1.10
docker rmi llsydn/openoffice:4.1.10

正文完
 0