对于 Spire.Cloud v10.8 及以上版本,我们提供了支持在 CentOS 9 操作系统上进行私有化部署的软件包。该部署包包含 install_centos9.sh 自动化脚本,用于简化和加速部署过程,以及依赖库MySQL和RabbitMQ部署镜像,方便安装。此部署方式同样也支持离线环境的部署,具体安装步骤如下:
获取Spire.Cloud 私有化部署安装包及验证授权
私有化部署需要应用有效的 license 文件,否则在线编辑服务和 WEB API 服务将不能正常运行。请联系我们邮箱:该 Email 地址已受到反垃圾邮件插件保护。要显示它需要在浏览器中启用 JavaScript。;电话:028-81705109,可以获取临时 license 文件进行评估测试。
系统配置
关闭防火墙:
1)查看当前防火墙的状态:firewall-cmd --state
2)关闭防火墙:systemctl stop firewalld.service
3)再次查看状态,检查防火墙是否已经关闭:firewall-cmd --state
静态IP配置:
1)命令ip addr 查看网络接口:
2)命令:vi /etc/sysconfig/network-scripts/ifcfg-enp1s0,打开配置文件编辑配置。
3)依次使用以下命令重启网络服务:
nmcli connection reload # 重新加载配置文件
nmcli networking off # 关闭网络(会断开连接)
nmcli networking on # 开启网络
nmcli device status # 查看网络状态
4)命令: ip addr 查看当前 ip 地址,确认是否修改成功。
Docker 安装:
Docker 安装:
1)安装docker依赖包:yum install -y yum-utils
2)设置镜像仓库:
默认官方国外站点设置(较慢):
yum-config-manager \ --add-repo \https://download.docker.com/linux/centos/docker-ce.repo
国内镜像站点设置(较快):yum-config-manager
--add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3)安装docker相关引擎 : yum install docker-ce docker-ce-cli containerd.io
4)启动docker,并查看是否安装成功
systemctl start docker
docker version
5)拉取hello-world 镜像,验证docker功能是否正常
docker run hello-world
部署 Spire.Cloud
1)将获取的部署安装包拷贝到 CentOS 9 系统中解压。
2)Docker安装MySQL
a.进入Centos9的安装部署包目录,Docker加载MySQL镜像:docker load --input mysql8.0.40.tar。
b.使用docker images 查看新建的MySQL镜像ID, 使用docker tag <镜像ID> mysql:8.0.40 将其重命名为mysql。
c.启动mysql的容器,设置MySQL端口为:3306,密码设置为:root。
docker run \
-p 3306:3306 --name mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.40
d.使用vi Spire.Cloud.Linux.CnPriApis_10.8.8/my.cnf 在部署包目录下新建一个my.cnf文件,文件中输入以下内容:
[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
init_connect="SET collation_connection = utf8mb4_unicode_ci"
init_connect="SET NAMES utf8mb4"
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
skip-name-resolve
e. 上传目录下createdb.sql和my.cnf两个文件到mysql容器里面
docker cp ./createdb.sql <容器ID>:/opt/
docker cp ./my.cnf <容器ID>:/etc/mysql/conf.d/
f. 登录mysql的容器依次分步执行下面的操作
//进入容器
docker exec -it mysql /bin/bash
//以root用户登录数据库(密码为启动容器时候设置的root)
mysql -u root -p;
//初始化数据表
source /opt/createdb.sql
//允许远程访问数据库
ALTER USER 'root'@'%' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
//使更改立即生效
FLUSH PRIVILEGES;
g.查看mysql端口启动状态
docker inspect mysql --format='{{.State.Status}}'
docker port mysql
Docker安装RabbitMQ
a. 进入Centos9的安装部署包目录,Docker加载RabbitMQ的本地镜像:docker load --input rabbitmq3.13.7.tar。
b.使用docker images 查看新建的RabbitMQ镜像ID, 使用docker tag <镜像ID> rabbitmq:3.13.7-management将其重命名为rabbitmq。
c. 启动rabbitmq服务,其中/path/to/your/data 为宿主机指定文件夹路径用于数据挂载
docker run -d --name rabbitmq \
-p 5672:5672 \
-p 15672:15672 \
-v /path/to/your/data:/var/lib/rabbitmq:Z \
rabbitmq:3.13.7-management
d. 添加RabbitMQ用户,默认登录用户guest 密码guest
可按下面照步骤指令,添加新的root用户,密码root:
//启动RabbitMQ
docker start rabbitmq
//进入RabbitMQ容器
docker exec -it rabbitmq /bin/bash
//添加用户root,密码root
rabbitmqctl add_user root root
//设置管理员权限
rabbitmqctl set_user_tags root administrator
rabbitmqctl set_permissions -p / root ".*"
//验证是否添加用户成功
rabbitmqctl list_users
e. 查看RabbitMQ启动是否正常
docker inspect rabbitmq --format='{{.State.Status}}'
docker port rabbitmq
另外,也可以通过浏览器访问IP:15672,如http://192.168.3.131:15672/ 验证RabbitMQ服务是否正常启动和用户是否添加成功。
Spire.Cloud部署
a. 进入安装部署包目录找到default.json配置文件: /spire.cloud/service/Common/config/default.json,配置上面安装的MySQL和RabbitMQ用户及密码
b. 使用root 用户为spire.cloud整个文件夹设置权限:chmod -R 777 spire.cloud
c. 使用root 用户执行安装脚本:sh install_centos7.sh,可以选择安装时输出日志:sh install_centos9.sh >1.log
d. 绑定授权,如果你的部署环境是联网环境,将获取的license.elic.xml授权文件上传至服务器文件夹spire.cloud/service/ConverterService/bin/license下,针对 xml授权文件设置读写权限,chmod -R 777 license.elic.xml,并运行绑定脚本sh binding_license.sh
绑定成功的license.elic.xml文件最下面会多出
e. 为了保证文档另存为其它格式(例如PDF,XPS等)的效果一致性,请确保centos9系统/usr/share/fonts/下安装相应文档使用的字体。
测试使用在线编辑功能
Spire.Cloud 产品主要涉及的端口服务:8000 在线编辑服务(如需嵌入你的文档系统请参考前端快速接入8000编辑服务示例);3000 示例文件系统服务;8050 WebAPI接口服务。我们可以使用3000示例服务进行体验测试 ,在浏览器地址栏输入“[服务器 ip]:3000”(针对本次部署: 192.168.3.131:3000),出现以下界面:
“Upload File”按钮可以上传Word,Excel, PowerPoint格式文档进行编辑和预览,上传PDF文档进行预览。
”Create Document”创建一个新的Word文档
”Create Spreadsheet”创建一个新的Excel文档:
”Create Presentation”创建一个新的PowerPoint文档: