关键词:平台部署,O2OA,流程引擎,OA系统,流程审批平台,工作流管理,Java开源平台,宝塔面板


宝塔面板是一款非常不错的运维管理面板,让系统运维更加方便简单。O2OA的运行和部署本质上不需要依赖面板,但是我们也可以使用面板简化相应的操作。本文主要介绍O2OA在宝塔面板上的部署和启动。

前提条件:

1、完成宝塔面板的安装,https://www.bt.cn/bbs/thread-19376-1-1.html

2、Linux系统需要完成FTP工具pure-ftpd的安装(或者有可能直接连接服务器的SSH或者SFTP工具)


一、下载O2OA安装包

(一)手动从官网下载后上传到服务器

本方法直接手工从官网下载服务器安装包,并且使用FTP工具软件将安装包上传到服务器指定位置后解压缩即可。

安装步骤:

1、O2OA安装包下载

登录http://www.o2oa.net,在平台下载页面(https://www.o2oa.net/download.html)根据自己的服务器类型下载最新的服务器安装包:

建议直接下载 java11 的版本。

下载后获得服务器安装压缩包:o2server-6.2.2-linux-x64.zip 或者 o2server-6.2.2-windows-x64.zip

2、将安装包上传到服务器(Windows操作略)

前提条件:需要在定塔面板中安装 Pure-ftpd 软件。

使用自己的FTP工具或者宝塔FTP工具创建文件目录,并且将O2OA安装包o2server-6.2.2-linux-x64.zip 或者 o2server-6.2.2-windows-x64.zip上传到服务器指定位置。

(1)创建服务器文件存放目录:

Linux操作系统:创建目录 /data/

Windows操作系统:创建目录 D:/data/



填写好用户名和密码后,点击提交。

(2)将安装包上传至目录/data/ 或者 D:/data/


至此安装包下载和上传操作完成。

(二)Linux服务器直接使用服务器命令下载

1、启用终端命令窗口:

2、创建服务器文件存放目录:

Linux操作系统:创建目录 /data/ ,执行命令

mkdir /data

3、下载服务器安装包

在/data目录中下载 o2server-6.2.2-linux-x64.zip,下载地址可以在官网的安装包下载时浏览器下载或者迅雷下载的右键复制下载链接得到:

如:https://download.o2oa.net/download/o2server-6.2.2-linux-x64.zip

执行命令下载文件:

cd /data/
wget https://download.o2oa.net/download/o2server-6.2.2-linux-x64.zip

直到下载完成。请注意,进行文件解压操作之前,需要修改文件权限为755或者777:

二、解压并启用O2OA服务器

(一)安装包解压

1、windows环境,直接右键解压安装到一个单独的文件夹即可,解压完成后将文件更名为 o2server

2、linux环境,可以使用宝塔的文件管理来进行文件解压,解压完成后将文件更名为 o2server

解压之前要检查文件的权限是否正确,请参考上一节的修改文件权限。

修改解压的路径为/data/o2server

等待解压完成:

(二)启用O2OA服务

1、windows操作系统可以直接双击执行D:/data/o2server/start_windows.bat完成O2OA的启用。

2、Linux操作系统可以执行命令启动O2OA,步骤如下:

打开终端,并且执行命令:

/data/o2server/start_linux.sh

服务器正在启动中:

直到终端显示WEB服务启用完成。

三、服务器端口限制与配置

1、防火墙放行80、20020、20030端口

O2OA的启动与正常运行需要服务器向外开发80、20020、20030三个端口。打开安全界面,开放指定的端口访问权限:

如果用户安装了WEB服务器,如IIS,Apache,Nginx等,80端口会被占用,导致服务器启用失败。此时可以修改服务器的WEB端口为其他端口。

2、修改服务器端口

/data/o2server/configSample目录中将文件node_127.0.0.1.json复制到 /data/o2server/config目录中进行配置:

双击node_127.0.0.1.json编辑文件,在web节点增加端口信息行:

"port": 8080, #8080是需要修改的端口号,也需要在防火墙放行

完整的配置信息如下:

{
  "enable": true,
  "isPrimaryCenter": true,
  "center": {
    "enable": true,
    "order": 0.0,
    "sslEnable": false,
    "redeploy": true,
    "port": 20030.0,
    "httpProtocol": "",
    "proxyHost": "",
    "proxyPort": 20030.0,
    "scanInterval": 0.0,
    "configApiEnable": true,
    "statEnable": true,
    "statExclusions": "*.js,*.gif,*.jpg,*.png,*.css,*.ico",
    "maxFormContent": 20.0,
    "exposeJest": true,
    "requestLogEnable": false,
    "requestLogFormat": "",
    "requestLogRetainDays": 7.0,
    "persistentConnectionsEnable": true,
    "###enable": "是否启用###",
    "###order": "center节点顺序,顺序排列0,1,2...###",
    "###sslEnable": "是否启用ssl传输加密,如果启用将使用config/keystore文件作为密钥文件.使用config/token.json文件中的sslKeyStorePassword字段为密钥密码,sslKeyManagerPassword为管理密码.###",
    "###redeploy": "每次启动是否重新部署所有应用.###",
    "###port": "端口,center服务器端口,默认20030###",
    "###httpProtocol": "对外http访问协议,http/https###",
    "###proxyHost": "代理主机,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问地址.###",
    "###proxyPort": "代理端口,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问端口.###",
    "###scanInterval": "重新扫描war包时间间隔(秒)###",
    "###config": "其他参数###",
    "###configApiEnable": "允许通过Api修改config###",
    "###statEnable": "启用统计,默认启用统计.###",
    "###statExclusions": "统计忽略路径,默认忽略*.js,*.gif,*.jpg,*.png,*.css,*.ico###",
    "###maxFormContent": "最大提交数据限制(M),限制有所上传的内容大小,包括附件.###",
    "###exposeJest": "暴露jest接口.###",
    "###requestLogEnable": "启用访问日志功能.###",
    "###requestLogFormat": "访问日志记录格式.###",
    "###requestLogRetainDays": "访问日志记录天数,默认7天.###",
    "###persistentConnectionsEnable": "是否启用长连接,默认false.###"
  },
  "application": {
    "enable": true,
    "port": 20020.0,
    "sslEnable": false,
    "proxyHost": "",
    "proxyPort": 20020.0,
    "redeploy": true,
    "scanInterval": 0.0,
    "includes": [],
    "excludes": [],
    "weights": [],
    "scheduleWeights": [],
    "statEnable": true,
    "statExclusions": "*.js,*.gif,*.jpg,*.png,*.css,*.ico",
    "maxFormContent": 20.0,
    "exposeJest": true,
    "maxThread": 500.0,
    "requestLogEnable": false,
    "requestLogFormat": "",
    "requestLogRetainDays": 7.0,
    "persistentConnectionsEnable": true,
    "###enable": "是否启用###",
    "###port": "http/https端口,负责向前端提供数据访问接口.默认为20020端口.###",
    "###sslEnable": "是否启用ssl传输加密,如果启用将使用config/keystore文件作为密钥文件.使用config/token.json文件中的sslKeyStorePassword字段为密钥密码,sslKeyManagerPassword为管理密码.###",
    "###proxyHost": "代理主机,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问地址.###",
    "###proxyPort": "代理端口,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问端口.###",
    "###redeploy": "每次启动是否重载全部应用.###",
    "###scanInterval": "应用reload扫描间隔,\u003c0 表示不会reload应用,扫描到应用文件发生了变化.###",
    "###includes": "承载的应用,在集群环境下可以选择仅承载部分应用以降低服务器负载,可以使用*作为通配符.###",
    "###excludes": "选择不承载的应用,和includes的值配合使用可以选择或者排除承载的应用,可以使用*作为通配符.###",
    "###weights": "设置应用的Web访问权重,在集群环境中,一个应用可以部署多个实例提供负载均衡.通过合计占比来分配应用占比.###",
    "###scheduleWeights": "设置应用的定时任务权重,在集群环境中,一个应用可以部署多个实例提供负载均衡.通过合计占比来分配应用占比.###",
    "###statEnable": "启用统计,默认启用统计.###",
    "###statExclusions": "统计忽略路径,默认忽略*.js,*.gif,*.jpg,*.png,*.css,*.ico###",
    "###maxFormContent": "最大提交数据限制(M),限制有所上传的内容大小,包括附件.###",
    "###exposeJest": "暴露jest接口.###",
    "###maxThread": "最大http线程数.###",
    "###requestLogEnable": "启用访问日志功能.###",
    "###requestLogFormat": "访问日志记录格式.###",
    "###requestLogRetainDays": "访问日志记录天数,默认7天.###",
    "###persistentConnectionsEnable": "是否启用长连接,默认true.###"
  },
  "web": {
    "enable": true,
    "sslEnable": false,
    "proxyHost": "",
    "port": 8080,
    "weight": 100.0,
    "dirAllowed": false,
    "statEnable": false,
    "statExclusions": "*.gif,*.jpg,*.png,*.ico",
    "cacheControlMaxAge": 0.0,
    "persistentConnectionsEnable": true,
    "requestLogEnable": false,
    "requestLogFormat": "",
    "requestLogRetainDays": 7.0,
    "###enable": "是否启用###",
    "###port": "http/https端口,用户输入网址后实际访问的第一个端口.http协议默认为80端口,https默认为443端口.###",
    "###sslEnable": "是否启用ssl传输加密,如果启用将使用config/keystore文件作为密钥文件.使用config/token.json文件中的sslKeyStorePassword字段为密钥密码,sslKeyManagerPassword为管理密码.###",
    "###proxyHost": "代理主机,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问地址.###",
    "###proxyPort": "代理端口,当服务器是通过apache/nginx等代理服务器映射到公网或者通过路由器做端口映射,在这样的情况下需要设置此地址以标明公网访问端口.###",
    "###weight": "设置权重.当前没有作用,###",
    "###dirAllowed": "允许浏览目录,###",
    "###statEnable": "启用统计,默认启用统计.###",
    "###statExclusions": "统计忽略路径,默认忽略*.gif,*.jpg,*.png,*.ico###",
    "###cacheControlMaxAge": "服务器max-age缓存时间(秒)###",
    "###proxyCenterEnable": "是否启用center服务器代理.###",
    "###proxyApplicationEnable": "是否启用application服务器代理###",
    "###proxyTimeOut": "代理连接超时时间,默认300(秒)###",
    "###persistentConnectionsEnable": "是否启用长连接,默认true.###",
    "###requestLogEnable": "启用访问日志功能.###",
    "###requestLogFormat": "访问日志记录格式.###",
    "###requestLogRetainDays": "访问日志记录天数,默认7天.###"
  },
  "data": {
    "enable": true,
    "tcpPort": 20050.0,
    "webPort": 20051.0,
    "includes": [],
    "excludes": [],
    "jmxEnable": false,
    "cacheSize": 512.0,
    "logLevel": "WARN",
    "maxTotal": 50.0,
    "maxIdle": 0.0,
    "statEnable": true,
    "statFilter": "mergeStat",
    "slowSqlMillis": 2000.0,
    "lockTimeout": 120000.0,
    "###enable": "是否启用,如果没有可用的externalDataSources.json文件,那么默认会在节点中启用本地的H2数据库作为默认的数据库.###",
    "###tcpPort": "H2数据库jdbc连接端口,登录的用户名:sa,密码为xadmin的密码.数据库创建在/o2server/local/repository/data/X.mv.db,一旦数据库文件被创建,那么该数据库的密码被创建.###",
    "###webPort": "H2数据库web端口,H2提供一个web端的client,此端口为web端client的访问端口.用户名sa,密码为xadmin数据库初始创建的密码.###",
    "###includes": "设置此数据库存储的类,默认情况下存储所有类型,如果需要对每个类进行单独的控制以达到高性能,可以将不同的类存储到不同的节点上提高性能.可以使用通配符*###",
    "###excludes": "在此节点上不存储的类,和includes一起设置实际存储的类,可以使用通配符*###",
    "###jmxEnable": "是否启动jmx,如果启用,可以通过本地的jmx客户端进行访问,不支持远程jmx客户端.###",
    "###cacheSize": "H2数据库缓存大小,设置H2用于作为缓存的内存大小,以M作为单位,这里默认为512M.###",
    "###logLevel": "默认日志级别,FATAL, ERROR, WARN, INFO, TRACE. 完整的配置为DefaultLevel\u003dWARN, Tool\u003dTRACE, Enhance\u003dTRACE, METADATA\u003dTRACE, Runtime\u003dTRACE, Query\u003dTRACE, DataCache\u003dTRACE, JDBC\u003dTRACE, SQL\u003dTRACE###",
    "###maxTotal": "最大使用连接数###",
    "###maxIdle": "最大空闲连接数###",
    "###statEnable": "启用统计,默认启用###",
    "###statFilter": "统计方式配置,默认mergeStat###",
    "###slowSqlMillis": "执行缓慢sql毫秒数,默认2000毫秒,执行缓慢的sql将被单独记录.###",
    "###lockTimeout": "默认锁超时时间()毫秒).###"
  },
  "storage": {
    "enable": true,
    "port": 20040.0,
    "sslEnable": false,
    "name": "251",
    "accounts": [],
    "prefix": "",
    "deepPath": false,
    "###enable": "是否启用,对于二进制流文件,比如附件,图片等存储在单独的文件服务器中,可以支持多种文件服务器,默认情况下使用ftp服务器作为文件服务器,每个节点可以启动一个文件服务器以提供高性能.###",
    "###port": "ftp服务器端口,此端口可以不对外开放,仅有ApplicationServer进行访问,并不直接对用户提供服务.###",
    "###sslEnable": "是否启用ssl传输加密,如果启用将使用config/keystore文件作为密钥文件.使用config/token.json文件中的sslKeyStorePassword字段为密钥密码,sslKeyManagerPassword为管理密码.###",
    "###name": "名称,多个节点中不能重名,默认为251.###",
    "###accounts": "二进制流文件是分多个账号分段存储的,可以单独设置每个分类的存储配置,一般不需要设置.###",
    "###passivePorts": "ftp传输有主动和被动之分,如果使用了被动传输,设置被动端口范围,默认为29000-30000.###",
    "###prefix": "路径前缀.###",
    "###deepPath": "使用更深的路径###"
  },
  "logLevel": "warn",
  "dumpData": {
    "enable": false,
    "cron": "",
    "size": 7.0,
    "path": "",
    "###enable": "是否启用,默认禁用.###",
    "###cron": "定时任务cron表达式,默认每天凌晨2点进行备份.###",
    "###size": "最大保留份数,超过将自动删除最久的数据.###",
    "###path": "备份路径###"
  },
  "restoreData": {
    "enable": false,
    "cron": "",
    "path": "",
    "###enable": "是否启用.###",
    "###cron": "定时任务cron表达式###",
    "###path": "恢复路径###"
  },
  "nodeAgentEnable": true,
  "nodeAgentPort": 20010.0,
  "nodeAgentEncrypt": true,
  "quickStartWebApp": false,
  "autoStart": true,
  "###enable": "是否启用###",
  "###isPrimaryCenter": "是否是center节点,仅允许存在一个center节点###",
  "###center": "Center服务器配置###",
  "###application": "Application服务器配置###",
  "###web": "Web服务器配置###",
  "###data": "Data服务器配置###",
  "###storage": "Storage服务器配置###",
  "###logLevel": "日志级别,默认当前节点的slf4j日志级别,通过系统变量\"org.slf4j.simpleLogger.defaultLogLevel\"设置到当前jvm中.###",
  "###dumpData": "定时数据导出配置###",
  "###restoreData": "定时数据导入配置###",
  "###logSize": "日志文件保留天数.###",
  "###auditLogSize": "审计日志文件保留天数.###",
  "###nodeAgentEnable": "是否启用节点代理###",
  "###nodeAgentPort": "是否启用节点端口###",
  "###nodeAgentEncrypt": "是否启用节点代理加密###",
  "###quickStartWebApp": "是否使用快速应用部署###",
  "###banner": "服务器控制台启动标识###",
  "###autoStart": "是否自动启动###",
  "###eraseContentEnable": "是否允许使用擦除数据功能###"
}


四、重启O2OA

(一)停止O2OA

1、windows操作系统直接关闭命令窗口,O2OA进程即可退出,服务停止。

2、Linux操作系统则需要在命令行键入stop,或者直接Kill进程来停止操作系统

查询进程命令:

ps -ef|grep java

获得进程号,并且杀死进程:

kill -9 16096

(二)启动O2OA

1、windows操作系统可以直接执行D:/data/o2server/start_windows.bat完成O2OA的启用。

2、Linux操作系统可以执行命令启动O2OA:

打开终端,并且执行命令:

/data/o2server/start_linux.sh

截图见第二节启用O2OA服务器

五、访问与使用O2OA

使用Web服务器端口访问O2OA, http://172.16.93.8:8080

默认的超级管理员账号:xadmin 默认密码:o2


至此,本篇的内容介绍完毕,希望大家喜欢!


推荐文章:

移动办公-将平台集成到阿里钉钉(DingTalk)
2021-02-25
O2OA平台拥有配套的原生开发的安卓和IOS移动APP,可以以微应用的方式集成到阿里钉钉,同步钉钉的企业通讯录作为本地组织人员架构,并且可以将待办等通知直接推送
开发知识-React篇:在O2OA平台框架中使用React
2021-02-07
  本章我们介绍使用React的CreateReactApp工具,在O2平台中创建React应用。在本例中,我们将列示当前用户的前20条待办,点击标题打开待办;
数据中心-自定义数据表
2021-03-01
O2OA提供的数据管理中心,可以让用户通过配置的形式完成对数据的汇总,统计和数据分组展现,查询和搜索数据形成列表数据展现。也支持用户配置独立的数据表来适应特殊的
开发知识-数据优化知识点
2021-02-07
查询性能优化使用连接(JOIN)来代替子查询(Sub-Queries)MySQL从4.1开始支持SQL的子查询。这个技术可以使用SELECT语句来创建一个单列的
开发知识-达梦数据安装
2021-02-07
1.安装命令:    ./DMInstall.bin 图形化安装    ./DMInstall.bin-i 文字界面安装注意事项:    可打开文件数过少,建议
Custom应用前端代码编译
2021-03-15
O2OA允许用户对服务进行扩展,可以修改原来的代码,但是我们更推荐用户增加新的war包,jar包,根据O2OA的源码结构新增服务和应用来进行业务的扩展。本文主要
数据中心-数据视图开发
2021-12-06
@数据中心@数据视图@数据统计@视图开发@数据汇总O2OA提供的数据管理中心,可以让用户通过配置的形式完成对数据的汇总,统计和数据分组展现,查询和搜索数据形成列
脑图管理
2021-02-19
O2OA思维导图是表达发散性思维的有效图形思维工具,它简单却又很有效同时又很高效,是一种实用性的思维工具。思维导图运用图文并重的技巧,把各级主题的关系用相互隶属
o2oa集成wps
2021-10-28
@移动办公@O2OA微信办公@微信公众号办公@微信办公@手机办公O2OA平台是一个企业办公类系统,为了方便实现在线编辑word、excel、ppt文件,与金山w
系统配置-主要配置文件说明
2021-02-25
O2OA开发平台有比较多的配置文件,目前多数配置已经已经可以直接在WEB端进行修改。本章节主要讲述O2OA信息化系统开发平台支持的配置文件以及各项配置相关的用途

results matching ""

    No results matching ""