Thanks for you reply. The original file is a html (readme.html) as follows, sorry I can’t upload it:
<html><body>
<h1>打包流程</h1>
<p>手工触发一个pipeline</p>
<h1>使用方法</h1>
<ol start="0">
<li>
<p>初次部署:执行initialize.sh 创建docker secret.</p>
</li>
<li>
<p>将artifacts下载下来,可以看到包含该部署包需要的images.txt以及用于下载镜像的脚本</p>
</li>
<li>
<p>在公司的某一台服务器上执行export_images.sh 会将所有的镜像导出到Docker_images目录</p>
</li>
<li>
<p>重新将安装包和镜像压缩成tar</p>
</li>
<li>
<p>将安装tar拷贝到场内</p>
</li>
<li>
<p>执行load_images.sh 导入镜像</p>
</li>
<li>
<p>执行push_images.sh <docker-reigstry>:<registry-port> push镜像到客户环境中的registry中</p>
</li>
<li>
<p>按照客户环境的具体配置,配置一下对应的参数(请查看各个模块下的values.yaml配置,添加上对应的配置)</p>
</li>
<li>
<p>helmfile中配置的namespace 是sage-gpt, 需要创建一个docker secret(假设docker-server的用户名和密码是testuser/testpassword, 默认部署脚本的docker registry的密码是testuser/testpassword)
<code>kubectl create secret docker-registry docker-secret --docker-server=<docker-reigstry>:<registry-port> --docker-username=testuser --docker-password=testpassword -n <namespace></code></p>
</li>
<li>
<p>准备环境变量:
<code>export DOCKER_SECRET=docker-secret</code>
<code>export DOCKER_REGISTRY=harbor.4pd.io</code></p>
</li>
<li>
<p>执行helmfile apply 更新客户环境 或者使用helmfile sync 更新到客户环境中</p>
</li>
</ol>
</body></html>
The command line is
soffice --convert-to pdf readme.html
The output pdf is readme.pdf (50.8 KB)
You can see before “initialize.sh” a spacing is added in the output pdf.