-
Notifications
You must be signed in to change notification settings - Fork 19
部署服务端
钟勋 edited this page Jul 4, 2021
·
13 revisions
部署架构图:
服务端支持两种部署方式:
- 使用java命令启动
- 使用docker镜像启动
服务端使用SpringBoot开发而成,因此不需要部署tomcat,直接使用java -jar命令启动jar包。 按照以下步骤操作:
- 下载最新版服务端jar包(idcenter-1.6.0.jar)
- 安装Java8或使用已有的Java8
- 安装数据库,可选择使用MySQL或者PostgreSQL作为服务端的数据库。
- MySQL操作方法:安装MySQL或使用已有的MySQL,创建数据库idcenter_online,并使用最新版初始化sql脚本(idcenter-1.6.0-MySQL-ddl.sql)进行初始化。
- PostgreSQL操作方法:安装PostgreSQL或使用已有的PostgreSQL,创建数据库idcenter_online,并使用最新版初始化sql脚本(idcenter-1.6.0-PostgreSQL-ddl.sql)进行初始化。
- 在服务器中创建目录/var/apps/,并保证服务端对它拥有读写权限。
- 启动服务端
启动命令模版:
nohup java -Xms1024m -Xmx1024m -Dspring.profiles.active=online -Dspring.datasource.url=数据库url -Dspring.datasource.username=数据库用户名 -Dspring.datasource.password=数据库密码 -jar idcenter-1.6.0.jar &
注意: 可根据具体情况设置虚拟机内存,比如设置1GB"-Xms1024m -Xmx1024m";
如果启动出现command not found报错,可能是你的终端无法识别数据库url里面包含的特殊字符,只需将数据库url放到英文双引号里再重试就可以了
比如我本地启动命令:
nohup java -Xms1024m -Xmx1024m -Dspring.profiles.active=online -Dspring.datasource.url="jdbc:mysql://192.168.0.1:3306/idcenter_online?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8" -Dspring.datasource.username=root -Dspring.datasource.password=12345678 -jar idcenter-1.6.0.jar &
注意:数据库url中需加上serverTimezone=GMT%2B8,它表示使用中国北京时区,不加的话最终存储到数据库中的时间可能不正确。以上是最简版的启动命令脚本,真正部署时可自行进行丰富,比如指定gc文件参数等等。
- 查看启动日志:tail -100f /var/apps/idcenter/logs/idcenter.log
- 访问服务端:http://{IP}:6210
- 配置Nginx负载均衡策略:当部署了多个服务端时,需根据ip_hash的方式进行负载均衡。
docker用户可以便捷的使用镜像进行启动。 按照以下步骤操作:
- 安装Docker或使用已有的Docker
- 安装数据库,可选择使用MySQL或者PostgreSQL作为服务端的数据库。
- MySQL操作方法:安装MySQL或使用已有的MySQL,创建数据库idcenter_online,并使用最新版初始化sql脚本(idcenter-1.6.0-MySQL-ddl.sql)进行初始化。
- PostgreSQL操作方法:安装PostgreSQL或使用已有的PostgreSQL,创建数据库idcenter_online,并使用最新版初始化sql脚本(idcenter-1.6.0-PostgreSQL-ddl.sql)进行初始化。
- 启动服务端
启动命令模版:
docker volume create idcenter
docker run --detach --rm -p 6210:6210 --mount source=idcenter,target=/var/apps --env JAVA_OPTS="-Xms1024m -Xmx1024m -Duser.timezone=GMT+08 -Dspring.profiles.active=online -Dspring.datasource.url=数据库连接 -Dspring.datasource.username=数据库用户名 -Dspring.datasource.password=数据库密码" zhongxunking/idcenter:1.6.0
注意:可根据具体情况设置虚拟机内存,比如设置1GB"-Xms1024m -Xmx1024m";
比如我本地启动命令:
docker volume create idcenter
docker run --detach --rm -p 6210:6210 --mount source=idcenter,target=/var/apps --env JAVA_OPTS="-Xms1024m -Xmx1024m -Duser.timezone=GMT+08 -Dspring.profiles.active=online -Dspring.datasource.url=jdbc:mysql://192.168.0.1:3306/idcenter_dev?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8 -Dspring.datasource.username=root -Dspring.datasource.password=12345678" zhongxunking/idcenter:1.6.0
注意:数据库url中需加上serverTimezone=GMT%2B8,它表示使用中国北京时区,不加的话最终存储到数据库中的时间可能不正确。 以上是最简版的启动命令脚本,真正部署时可自行进行丰富,比如指定gc文件参数等等。
- 查看启动日志:1、执行命令“docker container ls”查看容器id;2、执行命令“docker exec -it 容器id bash”进入容器;3、执行命令“tail -100f /var/apps/idcenter/logs/idcenter.log”
- 访问服务端:http://{IP}:6210
- 配置Nginx负载均衡策略:当部署了多个服务端时,需根据ip_hash的方式进行负载均衡。