OpenOffice4: 软件包安装, Docker安装,集成SpringBoot应用

简介: OpenOffice4: 软件包安装, Docker安装,集成SpringBoot应用

 20210824202025144.jpg

软件包安装

1. 说明

本文档采用rpm包方式安装,操作系统为centos

2 下载openoffice rpm

创建源码包存放目录

mkdir /usr/local/src/openoffice
cd /usr/local/src/openoffice
wget https://jaist.dl.sourceforge.net/project/openofficeorg.mirror/4.1.5/binaries/zh-CN/Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_zh-CN.tar.gz

image.gif

#如果网速很慢,换个网络环境下载

下载地址:http://www.openoffice.org/zh-cn/ (需要下载rpm格式的)

3 解压安装

tar -xvzf Apache_OpenOffice_4.1.5_Linux_x86-64_install-rpm_zh-CN.tar.gz

image.gif

解压后会在当前目录里生成一个zh-CN目录, RPMS/ 里面都是rpm文件,我们需要安装这些文件

cd /usr/local/src/openoffice /zh-CN/RPMS/
rpm -ivh *.rpm

image.gif

20210824173532954.png

安装完后会在当前目录下生成一个desktop-integration目录

cd /usr/local/src/zh-CN/RPMS/desktop-integration/
rpm -ivh openoffice4.1.6-redhat-menus-4.1.5-9789.noarch.rpm

image.gif

4 启动openoffice

临时启动

/opt/openoffice4/program/soffice -headless -accept=“socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard

image.gif

后台永久运行

/opt/openoffice4/program/soffice -headless -accept=“socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard &

image.gif

加入到开机自启动

vim /etc/rc.local
nohup /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &

image.gif

删除openoffice

在program文件夹下执行:

rpm -erpm -qa |grep openofficerpm -qa |grep ooobasis

image.gif

查看openoffice进程

netstat -lnp |grep 或者 ps -ef|grep soffice

image.gif

问题

javaldx: Could not find a Java Runtime Environment!

yum install java-1.8.0-openjdk

Docker安装

使用打包好的openoffice4镜像

docker build --pull -t xiaojun207/openoffice4-daemon --build-arg OO_VERSION=4.1.7 .

image.gif

运行

docker run -d -u 123456 --name soffice -p 8100:8100 -v /data/:/data/ xiaojun207/openoffice4-daemon:latest

image.gif

参考:

https://hub.docker.com/r/xiaojun207/openoffice4-daemon

https://hub.docker.com/r/evan11/openoffice4-java8

https://github.com/rafaeltuelho/openoffice3-daemon

自己动手制作openoffice4镜像

制作openoffice镜像

资源准备,包括 OpenOffice 压缩包、Dockerfile 文件、sources.list 三个。

$ ls
Apache_OpenOffice_4.1.7_Linux_x86-64_install-deb_zh-CN.tar  Dockerfile  sources.list

image.gif

本地资源新建 Dockerfile 文件:

#基础镜像为debian
FROM yongqiang/debian-jdk8
COPY sources.list /etc/apt/
RUN apt-get update && apt-get upgrade && apt-get install -y libxt6 libxext6 libfreetype6 libxrender1
COPY Apache_OpenOffice_4.1.7_Linux_x86-64_install-deb_zh-CN.tar /
#解压
RUN tar -xvf Apache_OpenOffice*
#删除压缩包
RUN rm -f Apache_OpenOffice_*
#安装OpenOffice
RUN dpkg -i zh-CN/DEBS/*.deb || true
RUN dpkg -i zh-CN/DEBS/desktop-integration/*.deb || true
#删除解压缩的文件
RUN rm -Rf zh-CN
#暴露接口
EXPOSE 8100
#启动服务,占用8100端口
CMD /opt/openoffice4/program/soffice -headless -nofirststartwizard  -accept="socket,host=0.0.0.0,port=8100;urp;"

image.gif

构建镜像

$ docker build -t openoffice:v1 .

image.gif

启动容器

$ docker run -d -it -p 8100:8100 openoffice:v1

image.gif

提交到DockerHub

$ docker tag 6cefc75591a0 yongqiang/openoffice:v1
$ docker push yongqiang/openoffice:v1

image.gif

问题解决

制作镜像问题

/opt/openoffice4/program/soffice.bin: error while loading shared libraries: libXext.so.6: cannot open shared object file: No such file or directory

解决方案:apt-get install libxext6

/opt/openoffice4/program/soffice.bin: error while loading shared libraries: libfreetype.so.6: cannot open shared object file: No such file or directory

解决方案:apt-get install libfreetype6

javaldx: Could not find a Java Runtime Environment!

解决方案:FROM yongqiang/debian-jdk8

no suitable windowing system found, exiting.

解决方案:apt-get install libxt6 libxrender1

安装openoffice问题

问题一:

$ soffice
X11 connection rejected because of wrong authentication.
X11 connection rejected because of wrong authentication.
/opt/openoffice4/program/soffice.bin X11 error: Can't open display:
   Set DISPLAY environment variable, use -display option
   or check permissions of your X-Server
   (See "man X" resp. "man xhost" for details)

image.gif

解决:

$ vncserver
$ export DISPLAY=localhost:1
$ xhost +
access control disabled, clients can connect from any host

image.gif

在Linux下设置xhost方法步骤

第一步:用root登陆linux,启动vnc服务;

第二步:根据vnc起来的端口,设置export DISPLAY=localhost:1(1表示vnc在第一个tty上启动的),vnc的启动信息见附件1;

第三步:执行xhost +,并且提示“access control disabled, clients can connect from any host”才正确。

问题二:

Fatal server error:

could not open default font ‘fixed’

解决方案:apt-get -y install xfonts-base

安装完后从新启动vnc服务即可。

问题三:

Xlib: extension “RANDR” missing on display “localhost:1”.

解决方案:apt-get -y install xfonts-base

集成SpringBoot应用

参考:

https://openoffice.apache.org/

https://hub.docker.com/r/evan11/openoffice4-java8

https://hub.docker.com/r/xiaojun207/openoffice4-daemon

https://blog.csdn.net/yongyundeshiguang/article/details/113646731

目录
相关文章
|
8月前
|
监控 测试技术 持续交付
自动化测试和持续集成/交付:提升软件质量和效率的关键
在当今快节奏的软件开发环境中,自动化测试和持续集成/交付已经成为了必不可少的工具和流程。通过自动化测试,开发团队可以更快地检测和修复缺陷,同时提高测试覆盖率和质量。而持续集成/交付则可以让开发者将代码快速、自动地构建、测试和部署到生产环境中。这篇文章将探讨自动化测试和持续集成/交付的优势和实现方式,以及如何在实践中有效地使用它们来提升软件质量和效率。
|
9天前
|
安全 定位技术 API
婚恋交友系统匹配功能 婚恋相亲软件实现定位 语音社交app红娘系统集成高德地图SDK
在婚恋交友系统中集成高德地图,可实现用户定位、导航及基于地理位置的匹配推荐等功能。具体步骤如下: 1. **注册账号**:访问高德开放平台,注册并创建应用。 2. **获取API Key**:记录API Key以备开发使用。 3. **集成SDK**:根据开发平台下载并集成高德地图SDK。 4. **配置功能**:实现定位、导航及基于位置的匹配推荐。 5. **注意事项**:保护用户隐私,确保API Key安全,定期更新地图数据,添加错误处理机制。 6. **测试优化**:完成集成后进行全面测试,并根据反馈优化功能。 通过以上步骤,提升用户体验,提供更便捷的服务。
|
5月前
|
开发者 持续交付 Android开发
Xamarin开发者的秘密武器:如何通过持续集成与持续部署(CI/CD)实现高效、高质量的软件交付
【8月更文挑战第31天】在当今追求高效、高质量软件交付的时代,Xamarin开发者需像大厨般迅速烹制数字化佳肴,而持续集成(CI)与持续部署(CD)则是关键工具。CI要求开发者频繁将代码集成到共享仓库,利用自动化工具如Azure Pipelines或Jenkins自动编译、测试代码,确保质量。CD在此基础上进一步实现自动化部署,简化从开发到生产的全过程。借助如Visual Studio App Center这样的工具,Xamarin项目得以快速构建、测试并部署至Android和iOS平台,显著提升开发效率和代码质量,助力团队乘风破浪,驶向成功的彼岸。
36 0
|
5月前
|
前端开发 Java UED
JSF遇上Material Design:一场视觉革命,如何让传统Java Web应用焕发新生?
【8月更文挑战第31天】在当前的Web开发领域,用户体验和界面美观性至关重要。Google推出的Material Design凭借其独特的动画、鲜艳的颜色和简洁的布局广受好评。将其应用于JavaServer Faces(JSF)项目,能显著提升应用的现代感和用户交互体验。本文介绍如何通过PrimeFaces等组件库在JSF应用中实现Material Design风格,包括添加依赖、使用组件及响应式布局等步骤,为用户提供美观且功能丰富的界面。
57 0
|
6月前
|
编解码 数据挖掘 测试技术
对于大屏幕显示系统工程,这通常涉及到硬件(如显示器、投影仪、控制器等)和软件(如内容管理系统、控制软件等)的集成。
对于大屏幕显示系统工程,这通常涉及到硬件(如显示器、投影仪、控制器等)和软件(如内容管理系统、控制软件等)的集成。
|
6月前
|
测试技术 数据库 Python
在系统工程中,软件测试是一个至关重要的环节,它确保软件的质量、可靠性和性能。软件测试通常包括多个阶段,如单元测试、集成测试、系统测试和验收测试等。
在系统工程中,软件测试是一个至关重要的环节,它确保软件的质量、可靠性和性能。软件测试通常包括多个阶段,如单元测试、集成测试、系统测试和验收测试等。
|
6月前
|
传感器 机器学习/深度学习 监控
在视频监控和防盗报警系统工程中,通常包括硬件(如摄像头、传感器、报警器等)和软件(如监控软件、报警管理软件等)的集成。
在视频监控和防盗报警系统工程中,通常包括硬件(如摄像头、传感器、报警器等)和软件(如监控软件、报警管理软件等)的集成。
|
6月前
|
传感器 Python
门禁管理系统工程是一个涉及硬件和软件集成的复杂系统,旨在控制人员的出入,并记录和管理相关数据。
门禁管理系统工程是一个涉及硬件和软件集成的复杂系统,旨在控制人员的出入,并记录和管理相关数据。
|
7月前
|
jenkins 测试技术 持续交付
探索自动化测试的边界:持续集成与软件质量的协同进化
随着软件开发节奏的加快,自动化测试成为确保软件质量和快速交付的关键。本文深入分析了持续集成(CI)在自动化测试中的作用,探讨了如何通过优化CI流程来提升软件测试效率和质量。文章首先概述了自动化测试的基本概念和重要性,接着详细讨论了在CI环境下实施自动化测试的策略,包括工具选择、测试用例设计、以及反馈机制建立等。最后,通过案例分析,展示了一个成功的自动化测试实践,旨在为读者提供一套可行的方法论,以促进其软件项目的质量保证工作。
45 0
|
8月前
|
监控 测试技术 API
自动化测试工具与电脑桌面监控软件的集成:Selenium与Python的无缝整合
在当今数字化时代,软件质量保证是每个软件开发团队都必须面对的重要挑战之一。自动化测试工具和电脑桌面监控软件的结合,为开发团队提供了一种有效的方式来确保软件的稳定性和性能。本文将介绍如何利用Python编程语言中的Selenium库,与桌面监控软件进行无缝整合,以实现对应用程序的自动化测试和桌面监控。
294 5

热门文章

最新文章