目录
六、使用docker load 命令加载软航签章服务器的镜像
10.2将service文件放到/etc/systemd/system下
一、背景
首先介绍一下本文的背景:因工作需要,需要在Centos7.6的服务器环境时部署软航的电子签章系统的服务器管理平台。
还是先简单介绍一下这个软航电子签章系统:
软航,也叫NTKO,所以他们有时候也把软航电子签章系统叫做:NTKO电子签章系统。该产品是由重庆软航科技有限公司自主研发,拥有完全自主知识产权的产品;遵循国家保密局、国家密码局、公安部等制定的关于电子印章技术规范及标准。系统能够实现对电子印章的申请、审核、制作、状态管理、授权管理以及分级管理等印章全生命周期的管理,实现电子印章安全集中管控。
NTKO电子签章系统,能够为Word、Excel、WPS、PDF、OFD文档以及HTML网页添加安全的电子印章、手写签名、键盘批注,保证文档的可靠性和完整性。电子文档加盖印章后,如文档内容被篡改,电子印章变灰,并可提示文档内容不可信。
其中,重庆软航科技自主研发的OFD电子签章系统严格遵循国家密码管理局GM/T 0031《安全电子签章密码技术规范》标准,将电子签章技术与OFD软件联系在一起,并通过签章数据可以验证文档是否被篡改伪造、验证签章人的身份来防止用户抵赖,多方面的保障了OFD版式文档的安全。
这个产品是由部署在服务器上的管理平台以及根据客户端签章需求的签章软件构成。
根据软航公司的官方介绍,目前该产品已经完美适配了各类应用中间件,包括国产的 TongWeb应用服务器、宝兰德BES应用服务器、金蝶Apusic应用服务器、中创InforSuite应用服务器等,同时支持诸如Apache\JBoss、Tomcat、Undertow等应用服务器。 同时支持多种数据库类型发如:达梦数据库、人大金仓数据库、神舟通用数据库、南大通用数据库、海量数据库等,同时支持MySQL、SqlServer、Oracle等多种类型的数据库管理软件。支持多种部署方式。
本文主要是针对这个服务器上部署的软航电子印章管理平台在linux上使用docker部署之后需要实现开机自启动做的记录,反正记录一下或许其他人也有需要,或者过程中遇到问题方便自己后续查看吧。话不多说,下面开始:
二、联系软航公司获取docker版产品
首先要联系软航公司获取到docker部署时需要使用的产品包以及相关文档等docker-ntko-signserver.zip。
需要的可以通过他们官网:www.ntko.com (这里我放了了链接,可以直接传送哈~)电子印章 电子签章系统 重庆软航科技有限公司 NTKO Office文档控件 OFFICE在线编辑 手机签名 手机签章 移动签章 附件管理
去获取测试产品。 测试产品说是有半年的有效期。
三、安装docker
安装docker前,先通过命令docker version 检查当前环境是否已经安装docker以及当前版本是否可用。根据我实践目前NTKO的这个电子签章服务器好像对docker版本没有什么要求。 我是联网安装的:
yum install docker
如果不能联网,或者网络速度很慢,也可以通过安装包离线安装。目前国产服务器有各种各样的架构,就需要针对架构去下载了。我这次用的是centos7。6+intel的环境,所以我用x86架构的就行。这里也分享一下,到主页的资源下载中下载即可。
四、启动Docker
systemctl enable docker #设定docker 开机自启动
systemctl start docker # 启动docker
systemctl status docker #查询docker状态 Active为Active(running)时为启动状态
五、部署软航电子签章系统的docker镜像
软航提供了压缩格式的镜像包:docker-ntko-signserver.zip 用unzip命令解压:
unzip docker-ntko-signserver.zip #解压到当前目录下
注意:这个压缩包建议单独放到某个目录下,如:/opt/ntko/, 当然也可以根据自身需要自行放置。
根据软航的提供的docker版部署文档,解压后的文件情况如下:
六、使用docker load 命令加载软航签章服务器的镜像
上一步解压的时候就可以得到如下内容:
这个ntko-signserver-pro_6.0.2.4.tar就是软航提供的签章服务器镜像,跳转到签章服务器镜像所在目录下,使用docker load 命令加载软航签章服务镜像:
docker load -i ntko-signserver-pro_6.0.2.4.tar #加载签章服务器镜像
docker images #查看镜像情况
七、按照使用的数据库情况配置数据库
前面介绍的时候说过软航的这个电子签章系统支持多种数据库,需要在项目里配置一下数据库之后才能使用。具体参考软航相关数据库的部署文档就可以了。这里不废话了。
八、按照需要配置整个软航电子签章服务器
软航的电子签章系统配置还是比较灵活,提供了自由配置文件路径的权限,如:印章文件存放路径配置、签章服务器授权文件、日志存放路径、配置证书来源、用户密码加密方式等都可以自由选择。根据自己需求来吧。不多说。
九、启动服务
按照软航官方文档介绍配置好项目的各类参数之后,就可以启动这个签章服务器的服务了。
他们现在提供的是通过docker-compose实现启动,因此需要安装docker-compose:
yum install docker-compose #联网安装docker-compose
根据docker-compose的命令使用情况,可以使用前台或者后台启动方式去启动这个软航的电子签章服务器系统:
docker-compose up #在当前目录下 可以直接执行 这个命令,如果不在当前目录下 则可以
通过-f 指定这个docker-compose.yml的全路径
看到如下这个done就好了。
后台启动命令:
docker-compose up -d
然后就可以通过docker ps查询容器运行情况来确认是否启动起来了。
此时就可以通过软航设置的项目名以及默认端口结合当前这台服务器的IP来访问软航这个电子签章服务器的印章管理平台了:
浏览器地址栏输入:http://IP:1986/ntkoSignServer,如下图所示:
十、配置服务实现开机自启动
linux开机自启动相关知识,后续我会再详细出一篇。这里就只介绍本次操作的情况。
10.1编写service文件
在当前目录下直接编辑一个service文件:
vi ntkoServer.service #直接vi 文件如果没有这个文件,会自动创建
在这个文件内部写入如下内容:
[Unit]
Description=the ntkoSignServer service
Requires=docker.service
After=docker.service[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/bin/docker-compose up -d
ExecStop=/usr/local/bin/docker-compose down
WorkingDirectory=/opt/dockertest/[Install]
WantedBy=multi-user.target
编辑完毕按ECS键输入:wq!强制保存并退出
10.2将service文件放到/etc/systemd/system下
然后将这个service文件cp到目录/etc/systemd/system下
cp ntkoServer.service /etc/systemd/system
cd /etc/systemd/system
10.3验证service可用性
使用 systemctl start ntkoServer.service 以及docker ps启动做的这个服务以及查看容器是否启动,若看到如下情况,表示 正常启动了。
10.4设定service开机自启动
systemctl enable ntkoServer.service #这个命令很关键一定要执行
使用该命令时会自动创建链接,Created symlink from /etc/systemd/system/multi-user.target.wants/ntkoServer.service to /etc/systemd/system/ntkoServer.service. 将 当前/etc/systemd/system/ntkoServer.service与/etc/systemd/system/multi-user.target.wants/ntkoServer.service 连接起来。
10.5查看服务状态
systemctl status ntkoServer.service #查看服务状态
若查看服务状态异常,参考错误信息处理即可。
10.6验证开机自启动服务是否正常
reboot
docker ps
开机启动之后,docker ps 能查询到软航电子签章系统的服务器运行容器就对了:
若service文件有修改,一定要先执行systemctl daemon-reload以更新服务: