disconf系列【1】——百度disconf在ubuntu14.04环境下的安装
disconf官网给出的安装文档默认读者已经非常熟练本文1.2章节给出的依赖软件的原理及使用方法,且官网默认安装环境为linux(windows安装方法只字未提)。同时,官网对很多重要的细节语焉不详,因此才有下面这篇文档的产生。
有益的参考网址:http://blog.csdn.net/zhu_tianwei/article/details/49512751
1 环境及依赖软件说明
1.1 系统环境
Ubuntu14.04 LST
1.2 所依赖的软件
- Java:本机jdk版本为1.8.0_101
- Maven:本机maven版本为3.3.9
- Mysql: 本机mysql版本为5.6.16-1
- Reids:本机Redis版本为3.2.6
- Zookeeeper:本机Zookeeper版本为3.4.9
- Tomcat:本机tomcat版本为7.0.73
- Nginx:本机Nginx版本为1.10.2
1.3 disconf
下载地址:https://github.com/knightliao/disconf/archive/master.zip
2 安装步骤
说明:在进行以下安装步骤之前,默认所依赖的软件都已经正确安装完成。
2.1 下载文件,解压
cd ~
wget https://github.com/knightliao/disconf/archive/master.zip #使用git clone下载太不给力,因此采用wget下载
unzip master.zip
解压完成之后,会在用户目录下生成一个名为disconf-master的目录。

2.2 建立disconf目录
cd ~
mkdir disconf
cd disconf
mkdir online-resources
mkdir war
完成以上步骤后,将建立一个disconf目录,目录结构如下:
disconf
|---- online-resources
|---- war
2.3 将mvn编译需要用到的资源放入~/disconf/online-resources目录下。
cp /home/***/disconf-master/disconf-web/profile/rd/ /home/***/disconf/online-resources
cd ~
cd disconf/online-resources
cp application-demo.properties application.properties

接下来是对这些配置文件的修改:
jdbc-mysql.properties:需要修改mysql用户名和密码(和2.5章节相对应)
其余文件均不需修改。
2.4 编译disconf-master源文件,生成war包
注:在进行编译之前,可能还要修改pom.xml文件(总的pom.xml文件,而不是web里面的pom.xml,见下图),详细见 disconf系列【2】——解决zk部署情况为空的问题

编译的具体操作如下:
cd ~
cd disconf-master
mvn clean install #如果这步出现了错误,直接忽略,只要最终能生成war即可 #设置变量
ONLINE_CONFIG_PATH=/home/***/disconf/online-resources
WAR_ROOT_PATH=/home/***/disconf/war
export ONLINE_CONFIG_PATH
export WAR_ROOT_PATH #执行编译脚本,其实脚本执行的是mvn命令,并且会到${ONLINE_CONFIG_PATH}指定的位置读取编译所需要的资源配置文件
cd disconf-web
sh deploy/deploy.sh
以上步骤结束后,会在${WAR_ROOT_PATH}指定的位置生成如下文件:

2.5 初始化mysql
进入disonf-master/disconf-web/sql目录下,按照readme.md文件中的说明依次执行四个sql脚本。命令为source ...
执行完毕后,应该会生成如下7张表:

2.6 配置tomcat和nginx
① 进入tomcat的配置文件,找到server.xml,在<host>标签下添加如下内容:
<Context path="" docBase="/home/***/disconf/war"></Context>
② 进入nginx的安装目录,找到配置文件nginx.conf,在http{}中的内容修改如下:
upstream disconf {
server 127.0.0.1:8080;
}
server {
listen 8888;
server_name disconf.com;
access_log /home/***/var/logs/disconf/access.log;
error_log /home/***/var/logs/disconf/error.log;
location / {
root /home/***/disconf/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;
}
}
配置完成后,依次启动tomcat和nginx。
此时启动tomcat后,访问http://127.0.0.1:8080报404错误是正常的。
2.7 验证
在浏览器中访问http://127.0.0.1:8888,能够看到如下界面:

使用admin / admin 登录,APP选择为“disconf_demo”,同时选择“rd环境”,会看到如下界面:

上述界面出现说明disconf-web安装成功。
disconf系列【1】——百度disconf在ubuntu14.04环境下的安装的更多相关文章
- Ubuntu14.04环境下配置TFTP服务器
<<<<<<<<<<<<<<<<<<<<<<<<< ...
- Ubuntu18.04环境下melodic安装gmapping
Ubuntu18.04 环境下melodic中很多包没有提供sudo apt install的安装方式,需要通过源代码安装,安装方法如下: 1.先安装依赖库: sudo apt--dev sudo a ...
- ubuntu14.04环境下spyder的安装
在ubuntu14.04系统中,默认在/usr/lib目录下安装了python2.7.6和python3.4.3,在该环境下安装spyder,然后使其链接到python3.4.3. 首先安装为pyth ...
- ubuntu14.04环境下利用docker搭建solrCloud集群
在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...
- Ubuntu14.04环境下Qt5.5以上版本无法输入中文的解决教程
1.前言 由于Qt5.4之后对之前的Qt5版本不再二进制兼容,所以网上很多简单的旧的办法已经失效了,所以本教程的办法是重新编译fcitx-qt5,生成最新的libfcitxplatforminputc ...
- Ubuntu14.04环境下Samba报错排错过程
排错的方法和思路非常重要,日志非常非常非常非常重要!!! 搭建好Samba之后,windos访问一直下面这个错误,然后傻逼一样一直百度百度,一弄又是几天,但是经过自己一步一步的排错,弄成功之后,那心情 ...
- Suricata在ubuntu14.04环境下安装
简介 Suricata是一款高性能的网络IDS.IPS和网络安全监控引擎.它是由the Open Information Security Foundation开发,是一款开源的系统,现在的NIDS领 ...
- Ubuntu14.04环境下java web运行环境搭建
1.jdk安装 将下载好的安装包上传至/home目录解压 tar -zxvf jdk-8u71-linux-x64.tar.gz 执行 vim /etc/profile 在末尾添加java环境变量(J ...
- Linux从入门到适应(四):Ubuntu 16.04环境下,安装Nvidia驱动,cuda9.2和 cudnn
在安装深度学习框架之前,cuda和cudnn是必须要提前安装的,现在按照流程而nvidia驱动的版本和cuda版本有这一些对应关系,所以需要按照版本进行安装,现在说一下如何安装: 1 安装nvidia ...
随机推荐
- logstash无法使用conf启动
最近刚开始学习使用logstash,再安装好后准备验证下第一个demo的时候,出现了问题 Error: Expected one of #, input, filter, output at line ...
- AngularJS---表达式
AngularJS的表达式是放在{{}}里面,用{{ }}符号将一个变量绑定到$scope上. angularJS中的表达式有如下特点: 1.只能在其所属作用域内部 所有的表达式都在其所属的作用域内部 ...
- NC营改增
收票 select * from jzinv_receive where vinvno='04888118' 1045select * from bd_corp where pk_corp='104 ...
- PowerProfile.java与power_profile.xml
转载自http://blog.csdn.net/green1900/article/details/42427871 现在诸多关于电池管理的应用做的极其绚烂,可实现如耗电应用排行.剩余时间计算.关闭耗 ...
- PHP空数组转化为json对象的问题
例子: $a = []; echo json_encode($a); echo json_encode($a, JSON_FORCE_OBJECT); 输出结果: [] {}
- ajaxReturn
controller:$info=array('error'=>0,'msg'=>'');if($user_info){ if($user_info['is_lock']){ ...
- TensorFlow中权重的随机初始化
一开始没看懂stddev是什么参数,找了一下,在tensorflow/python/ops里有random_ops,其中是这么写的: def random_normal(shape, mean=0.0 ...
- terminator 安装及使用
1. 安装 $ sudo apt-get install terminator 2. 右键设置首选项 背景设置为0.8透明度, 字体挤在一起:在ubuntu下请选择mono后缀的字体就可以了 3. 使 ...
- Python format格式化输出
http://www.jb51.net/article/63672.htm 推荐参考 >>> '{0},{1}'.format('hello','python') 'hello,py ...
- [源码]String StringBuffer StringBudlider(2)StringBuffer StringBuilder源码分析
纵骑横飞 章仕烜 昨天比较忙 今天把StringBuffer StringBulider的源码分析 献上 在讲 StringBuffer StringBuilder 之前 ,我们先看一下 ...