disconf-web部署
简介
Disconf,即Distributed Configuration Management Platform(分布式配置管理平台)
专注于各种「分布式系统配置管理」的「通用组件」和「通用平台」, 提供统一的「配置管理服务」。
homepage: https://disconf.readthedocs.io
disconf: https://github.com/knightliao/disconf
demos: https://github.com/knightliao/disconf-demos-java
wiki: https://github.com/knightliao/disconf/wiki
配置
$ cd /disconf-web
$ cp profile/rd/application-demo.properties profile/rd/application.properties
$ vim profile/rd/application.properties
$ vim profile/rd/jdbc-mysql.properties
$ vim profile/rd/redis-config.properties
$ vim profile/rd/zoo.properties
配置文件包括:
jdbc-mysql.properties
(数据库配置)redis-config.properties
(Redis配置,主要用于web登录使用)zoo.properties
(Zookeeper配置)application.properties
(应用配置)
注意,即使只有一个redis,也应该配置两个redis client,否则将造成内部错误
构建
$ cd /disconf-web
$ mkdir /data/www/disconf/disconf-rd
$ mkdir /data/www/disconf/disconf-rd/online-resources
$ mkdir /data/www/disconf/disconf-rd/war
$ cp profile/rd/* /data/www/disconf/disconf-rd/online-resources/
$ ONLINE_CONFIG_PATH=/data/www/disconf/disconf-rd/online-resources
$ WAR_ROOT_PATH=/data/www/disconf/disconf-rd/war
$ export ONLINE_CONFIG_PATH
$ export WAR_ROOT_PATH
$ sh deploy/deploy.sh
这样会在 /data/www/disconf/disconf-rd/war
生成以下结果:
- disconf-web.war
- html
- META-INF
- WEB-INF
上线前的初始化工作
初始化数据库:
可以参考 disconf-web/sql/readme.md 来进行数据库的初始化。注意顺序执行
- 0-init_table.sql
- 1-init_data.sql
- 201512/20151225.sql
- 20160701/20160701.sql
里面默认有6个用户(请注意线上环境删除这些用户以避免潜在的安全问题)
name | password |
---|---|
admin | admin |
testUser1 | MhxzKhl9209 |
testUser2 | MhxzKhl167 |
testUser3 | MhxzKhl783 |
testUser4 | MhxzKhl8758 |
testUser5 | MhxzKhl112 |
如果想自己设置初始化的用户名信息,可以参考代码来自己生成用户:
src/main/java/com/baidu/disconf/web/tools/UserCreateTools.java
Tomcat部署War
修改server.xml文件,在Host结点下设定Context:
<Context path="" docBase="/data/www/disconf/disconf-rd/war"></Context>
并设置端口为 8015,启动Tomcat,即可。
部署前端
修改 nginx.conf
upstream disconf {
server 127.0.0.1:8015;
}
server {
listen 8081;
server_name disconf.com;
access_log /data/www/logs/disconf/access.log;
error_log /data/www/logs/disconf/error.log;
location / {
root /data/www/disconf/disconf-rd/war/html;
if ($query_string) {
expires max;
}
}
location ~ ^/(api|export) {
proxy_pass_header Server;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_pass http://disconf;
}
}
关于host:这里的host设置成 disconf.com(可以自定义),但必须与application.properties
里的domain一样。
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/23/disconf-web-deployment/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论