[TOC] #### 目录结构 ``` lua |-- docker-compose | |-- readMe.md # 说明文档 | |-- mysql.sh # 数据存储使用mysql5.7的启动脚本 | |-- oracle.sh # 数据存储使用oracle11g的启动脚本 | |-- mssql.sh # 数据存储使用sqlserver2107的启动脚本 | |-- postgre.sh # 数据存储使用postgresql12的启动脚本 | |-- bin # 具体配置及脚本目录 | | |-- docker-compose-app.yml # docker-compose文件,ibps-v3程序配置 | | |-- docker-compose-data.yml # docker-compose文件,数据存储配置,mq、es、redis、fastdfs等 | | |-- docker-compose-kibana.yml # docker-compose文件,kibana配置 | | |-- docker-compose-logstash.yml # docker-compose文件,logstash配置 | | |-- docker-compose-mssql.yml # docker-compose文件,mssql配置 | | |-- docker-compose-mysql.yml # docker-compose文件,mysql配置 | | |-- docker-compose-oracle.yml # docker-compose文件,oracle配置 | | |-- docker-compose-postgre.yml # docker-compose文件,postgre配置 | | |-- docker-compose-sw.yml # docker-compose文件,skywalking配置 | | |-- docker.compose.app.down.sh # shell脚本文件,ibps-v3程序停止 | | |-- docker.compose.app.logs.sh # shell脚本文件,ibps-v3程序日志查看 | | |-- docker.compose.app.up.sh # shell脚本文件,ibps-v3程序启动 | | |-- docker.compose.data.down.sh # shell脚本文件,数据存储停止 | | |-- docker.compose.data.logs.sh # shell脚本文件,数据存储日志查看 | | |-- docker.compose.data.up.sh # shell脚本文件,数据存储启动 | | |-- docker.compose.kibana.down.sh # shell脚本文件,kibana停止 | | |-- docker.compose.kibana.logs.sh # shell脚本文件,kibana日志查看 | | |-- docker.compose.kibana.up.sh # shell脚本文件,kibana启动 | | |-- docker.compose.logstash.down.sh # shell脚本文件,logstash停止 | | |-- docker.compose.logstash.logs.sh # shell脚本文件,logstash日志查看 | | |-- docker.compose.logstash.up.sh # shell脚本文件,logstash启动 | | |-- docker.compose.mssql.down.sh # shell脚本文件,mssql停止 | | |-- docker.compose.mssql.logs.sh # shell脚本文件,mssql日志查看 | | |-- docker.compose.mssql.up.sh # shell脚本文件,mssql启动 | | |-- docker.compose.mysql.down.sh # shell脚本文件,mysql停止 | | |-- docker.compose.mysql.logs.sh # shell脚本文件,mysql日志查看 | | |-- docker.compose.mysql.up.sh # shell脚本文件,mysql启动 | | |-- docker.compose.oracle.down.sh # shell脚本文件,oracle停止 | | |-- docker.compose.oracle.logs.sh # shell脚本文件,oracle日志查看 | | |-- docker.compose.oracle.up.sh # shell脚本文件,oracle启动 | | |-- docker.compose.postgre.down.sh # shell脚本文件,postgre停止 | | |-- docker.compose.postgre.logs.sh # shell脚本文件,postgre日志查看 | | |-- docker.compose.postgre.up.sh # shell脚本文件,postgre启动 | | |-- docker.compose.sw.down.sh # shell脚本文件,skywalking停止 | | |-- docker.compose.sw.logs.sh # shell脚本文件,skywalking日志启动 | | |-- docker.compose.sw.up.sh # shell脚本文件,skywalking启动 | | |-- replace.sh # shell脚本文件,替换文件内容,主要替换IP、数据库类型、授权密码等 | | |-- ui.sh # shell脚本文件,ui后端地址替换 | | |-- agent # skywalking客户端探针程序 | | |-- conf # 容器内程序配置文件目录 | | | |-- elasticsearch.yml # elasticsearch配置文件 | | | |-- kibana.yml # kibana配置文件 | | | |-- logstash.conf # logstash配置文件 | | | |-- logstash.yml # logstash配置文件 | | | |-- mysqld.cnf # mysql配置文件 | | | |-- nginx.conf # nginx配置文件 | | | |-- redis.conf # redis配置文件 | | |-- data # 容器内数据挂载目录,持久化,否则容器重启后数据会丢失 | | | |-- consul # 容器内consul数据挂载目录 | | | |-- es # 容器内elasticsearch数据挂载目录 | | | |-- fastdfs # 容器内fastdfs数据挂载目录 | | | |-- mssql # 容器内mssql数据挂载目录 | | | |-- mysql # 容器内mysql数据挂载目录 | | | |-- oracle # 容器内oracle数据挂载目录 | | | |-- postgres # 容器内postgre数据挂载目录 | | | |-- rabbitmq # 容器内rabbitmq数据挂载目录 | | | |-- redis # 容器内redis数据挂载目录 | | |-- datasource # ibps-v3程序容器内数据源配置文件目录 | | | |-- datasource-bpmn.xml # bpmn程序容器内数据源配置文件挂载 | | | |-- datasource-business.xml # business程序容器内数据源配置文件挂载 | | | |-- datasource-form.xml # form程序容器内数据源配置文件挂载 | | | |-- datasource-platform.xml # oauth2server/platform程序容器内数据源配置文件挂载 | | |-- env # 容器环境变量文件目录 | | | |-- bpmn.docker.env # bpmn容器环境变量文件 | | | |-- business.docker.env # business容器环境变量文件 | | | |-- container.env # 容器环境变量文件,暂时没用到 | | | |-- es.env # elasticsearch容器环境变量文件 | | | |-- eureka.docker.env # eureka容器环境变量文件 | | | |-- form.docker.env # form容器环境变量文件 | | | |-- ibps.sw.env # skywalking容器环境变量文件 | | | |-- kibana.env # kibana容器环境变量文件 | | | |-- logstash.env # logstash容器环境变量文件 | | | |-- mssql.env # mssql容器环境变量文件 | | | |-- mysql.env # mysql容器环境变量文件 | | | |-- oauth.docker.env # oauth2server容器环境变量文件 | | | |-- oracle.env # oracle容器环境变量文件 | | | |-- platform.docker.env # platform容器环境变量文件 | | | |-- postgresql.env # postgresql容器环境变量文件 | | | |-- provider.docker.env # ibps-v3程序容器环境变量文件 | | | |-- sw-oap.env # skywalking-oap容器环境变量文件 | | | |-- sw-ui.env # skywalking-ui容器环境变量文件 | | | |-- zuul.docker.env # zuul容器环境变量文件 | | | |-- sample # 容器环境变量文件模版目录 | | |-- init # 容器初始化目录 | | | |-- mssql # mssql容器初始化目录 | | | | |-- database.sh # mssql容器初始化数据库脚本 | | | | |-- init # mssql容器初始化数据库脚本目录 | | | | | |-- database-business.sh # mssql容器初始化business数据库脚本 | | | | | |-- database-platform.sh # mssql容器初始化platform数据库脚本 | | | | |-- sql # mssql容器初始化数据库sql脚本目录 | | | | |-- database-business.sql # mssql容器初始化business数据库sql脚本 | | | | |-- database-platform.sql # mssql容器初始化platform数据库sql脚本 | | | |-- mysql # mysql容器初始化目录 | | | | |-- database-business.sql # mysql容器初始化business数据库sql脚本 | | | | |-- database-platform.sql # mysql容器初始化platform数据库sql脚本 | | | |-- oracle # oracle容器初始化目录 | | | | |-- user-business.sh # oracle容器初始化business数据库脚本 | | | | |-- user-platform.sh # oracle容器初始化platform数据库脚本 | | | |-- postgres # postgres容器初始化目录 | | | |-- database-business.sql # postgres容器初始化business数据库sql脚本 | | | |-- database-platform.sql # postgres容器初始化platform数据库sql脚本 | | |-- license # ibps-v3程序容器授权文件挂载目录 | | |-- log # ibps-v3程序容器日志文件挂载目录 | | |-- logging # ibps-v3程序容器日志配置文件挂载目录 | | |-- other # 备份目录 | | |-- ui # ibps-v3前端程序容器挂载目录 ``` --- #### 操作说明 1. 修改脚本,将IP、授权密码替换为正确的值 以mysql.sh为例: * 部署的服务器IP为`192.168.3.207`; * 应用的授权密码为`lc20191030`; * 修改mysql.sh文件 原内容: ``` start(){ # 启动前请修改 # IP替换 sh replace.sh 192.168.3.230 192.168.3.230 mysql mysql lc2019 lc2019 if [ $? != 0 ] ; then exit 1 fi # 启动容器 sh docker.compose.mysql.up.sh sh docker.compose.data.up.sh sh docker.compose.app.up.sh } ``` 替换后内容: ``` start(){ # 启动前请修改 # IP替换 sh replace.sh 192.168.3.230 192.168.3.207 mysql mysql lc2019 lc20191030 if [ $? != 0 ] ; then exit 1 fi # 启动容器 sh docker.compose.mysql.up.sh sh docker.compose.data.up.sh sh docker.compose.app.up.sh } ``` > 参数说明: > sh replace.sh [程序打包时预设的IP地址] [程序运行时主机的IP地址] [程序打包时预设的数据库类型参数] [程序运行时的数据库类型参数] [程序打包时预设的授权密码] [程序运行时的授权密码] > 示例: > sh replace.sh 192.168.3.230 192.168.3.207 mysql mysql lc2019 lc20191030 > 注: > * 程序第一次修改时预设IP是`192.168.3.230`、数据库类型是`mysql`、授权密码是`lc2019` > * 程序多次修改时预设IP是`上一次设置的值`、数据库类型是`上一次设置的值`、授权密码是`上一次设置的值` 2. 添加授权文件到./bin/license目录 * 包含文件: `ibpsPublic.store`、`ibpsVfy.lic` 3. 脚本参数说明 * start # 启动服务 * restart # 重启服务 * stop # 停止服务 4. 脚本执行 以mysql.sh为例: ``` sh mysql.sh start # 启动服务 sh mysql.sh restart # 重启服务 sh mysql.sh stop # 停止服务 ``` > 如果docker pull报错,请在修改docker守护进程配置/etc/docker/daemon.json。 > > 添加: > { > "insecure-registries": ["tools.bpmhome.cn:18082"] > } > 重启docker服务 > systemctl daemon-reload; > systemctl restart docker; > 如果执行shell脚本报错,提示"\r",请使用dos2unix工具转换shell文件换行符; --- #### 验证说明 * 部署的服务器IP以`192.168.3.207`为例; 1. consul地址:http://192.168.3.207:38500 #查看服务注册; 2. swagger地址:http://192.168.3.207:35100 # 查看在线文档; 3. rabbit地址:http://192.168.3.207:15672 # 查看rabbit管理页; 4. skywalking地址:http://192.168.3.207:38080 # 查看skywalking链路监控页; 5. kibana地址:http://192.168.3.207:5601 # 查看kibana日志监控页; 6. UI地址:http://192.168.3.207:380 # 查看应用首页并开始体验IBPS-V3产品; > 注: > * 相关端口均为默认配置,如需调整请自行修改对应的docker-compose配置文件,注意修正相关env文件以及关联的docker-compose文件。 > * mysql用户root密码在文件`./bin/env/mysql.env`中。 > * mssql用户sa密码在文件`./bin/env/mssql.env`中。 > * postgresql用户root密码在文件`./bin/env/postgresql.env`中。 > * oracle用户business密码在文件`./bin/init/oracle/user-business.sh`中。 > * oracle用户platform密码在文件`./bin/init/oracle/user-platform.sh`中。 > * rabbitmq用户ibps密码在文件`./bin/docker-compose-data.yml`中。 > * rabbitmq用户lcdatasoft密码在文件`./bin/docker-compose-data.yml`中。 > * 涉及端口的文件有`./bin/*.yml`、`./bin/replace.sh`、`./bin/env/ibps.sw.env`、`./bin/env/platform.docker.env`、`./bin/env/provider.docker.env`、`./bin/env/sw-oap.env`、`./bin/env/sw-ui.env`、`./bin/conf/kibana.yml`、`./bin/conf/logstash.conf`。 > * 需要在不同网络环境访问需注意端口开放(38500/35100/380)、ui的访问地址需要使用公网或其他网络能访问的IP地址。