Commit 2d441f5d authored by tywldx's avatar tywldx

fix

parent e95c83fb
...@@ -269,29 +269,56 @@ admin.get('/get_project_config_from_db', function(req, res) { ...@@ -269,29 +269,56 @@ admin.get('/get_project_config_from_db', function(req, res) {
let projects = await proconfigs.find().toArray(); let projects = await proconfigs.find().toArray();
let re = []; let re = [];
for (var index = 0; index < projects.length; index++) { for (var index = 0; index < projects.length; index++) {
let temp = { let temp = {
name: projects[index]["project_name"], project_group: "",
type: projects[index]["type"], name: projects[index]["project_name"],
url: projects[index]["host_name"].replace(".xyqb.com", "").replace(".quantgroup.cn", ""), type: projects[index]["type"],
www: projects[index]["host_name"], url: projects[index]["host_name"].replace(".xyqb.com", "").replace(".quantgroup.cn", ""),
git_path: projects[index]["git_path"], www: projects[index]["host_name"],
config_path: projects[index]["config_path"], git_path: projects[index]["git_path"],
log_name: projects[index]["log_path"], log_name: projects[index]["log_path"],
command: projects[index]["start_command"], config_file: projects[index]["config_path"],
command2: projects[index]["build_command"], command: "",
stop_command: projects[index]["stop_command"], command_: "",
// command3: projects[index]["command3"], command2: "",
// command4: projects[index]["command4"], node_version: "",
// command5: projects[index]["command5"], port: projects[index]["port"],
port: projects[index]["port"], desc: projects[index]["des"],
desc: projects[index]["full_name"], is_active: projects[index]["is_active"],
is_active: projects[index]["is_active"], auth: projects[index]["auth"],
auth: projects[index]["auth"], target_path: ""
target_path: projects[index]["jar_path"] }
}
// let project_name = projects[i]['project_name']; // let temp = {
// temp[projects[i]['project_name']] = projects[i]; // name: projects[index]["project_name"],
// console.log(temp) // type: projects[index]["type"],
// url: projects[index]["host_name"].replace(".xyqb.com", "").replace(".quantgroup.cn", ""),
// www: projects[index]["host_name"],
// git_path: projects[index]["git_path"],
// config_path: projects[index]["config_path"],
// log_name: projects[index]["log_path"],
// command: projects[index]["start_command"],
// command2: projects[index]["build_command"],
// stop_command: projects[index]["stop_command"],
// port: projects[index]["port"],
// desc: projects[index]["full_name"],
// is_active: projects[index]["is_active"],
// auth: projects[index]["auth"],
// target_path: projects[index]["jar_path"]
// }
if(projects[index]["type"] == "java"){
temp.node_version = projects[index]["command1"];
temp.target_path = projects[index]["jar_path"];
temp.command2 = projects[index]["build_command"];
temp.command = projects[index]["start_command"];
}else if(projects[index]["type"] == "ui"){
temp.command = projects[index]["build_command"]
}else if(projects[index]["type"] == "node"){
temp.command = projects[index]["start_command"]
temp.command2 = projects[index]["stop_command"]
}else if(projects[index]["type"] == "python"){
}
re.push(temp); re.push(temp);
} }
db.close(); db.close();
......
dongmeifeng|192.168.4.78|32093|32093 tower|192.168.4.78|30886|30084 zhangbo|192.168.4.77|31091|32056 wangfei|192.168.4.77|32389|31374 renmingxing|192.168.4.78|30169|32509 songruili|192.168.4.18|32355|30265 yiwei|192.168.4.77|30352|30286 lishuang|192.168.4.77|30011|31185 chenyadong|192.168.4.77|30384|32523 chenxingchun|192.168.4.33|30445|30583 yanxiaoyu|192.168.4.18|32116|30133 cloner|192.168.6.9|32566|32560 c2|192.168.6.8|30492|31481 withdb|192.168.6.9|30321|30896 base|192.168.6.9|31440|32685 dbtest|192.168.6.9|31669|31647 ggggg|192.168.6.9|30451|32069 |192.168.6.9|| kube-system|192.168.6.9|32747|31034 yangchunlian|192.168.4.32|31460|31452
#!/bin/bash
pwd_path="/home/qa-deploy-utils/qa_shell_script"
config_shell_path="$pwd_path"
config_server="$pwd_path/config_server"
nginxname="/usr/local/openresty/nginx/conf/conf.d"
pwd_path_0="/home/qa-deploy-utils"
dockernamespace=`cat $pwd_path/ngrok/docker_env_name.sh`
ips=`cat $config_server/get_env_ip.sh`
rm -rf $filename
rm -rf $nginxname/*
function createNginxHttpAndSSLConf()
{
project_name=$1
cus_domain=$2
cus_ip=$3
http_port=$4
https_port=$5
file_name=$6
touch $file_name
echo "############----${project_name}----############" >> $file_name
echo "server {" >> $file_name
echo " listen 80;" >> $file_name
echo " server_name $cus_domain.q-gp.com;" >> $file_name
echo " underscores_in_headers on;" >> $file_name
echo " proxy_set_header REMOTE_ADDR \$remote_addr; " >> $file_name
echo " proxy_set_header REMOTE_PORT \$remote_port; " >> $file_name
echo " proxy_set_header Host \$host;" >> $file_name
echo " proxy_set_header QT_TOKEN \$http_QT_TOKEN;" >> $file_name
echo "" >> $file_name
echo " location / {" >> $file_name
echo " proxy_pass http://$cus_ip:$http_port;" >> $file_name
echo " }" >> $file_name
echo "}" >> $file_name
echo "" >> $file_name
echo "server {" >> $file_name
echo " listen 443 ssl;" >> $file_name
echo " server_name $cus_domain.q-gp.com;" >> $file_name
echo "" >> $file_name
echo " proxy_set_header QT_TOKEN \$http_QT_TOKEN;" >> $file_name
echo " ssl_certificate /home/q-gp/ssl/certificate.crt;" >> $file_name
echo " ssl_certificate_key /home/q-gp/ssl/private.key;" >> $file_name
echo "" >> $file_name
echo " ssl_session_cache shared:SSL:1m;" >> $file_name
echo " ssl_session_timeout 5m;" >> $file_name
echo "" >> $file_name
echo " ssl_ciphers HIGH:!aNULL:!MD5;" >> $file_name
echo " ssl_prefer_server_ciphers on;" >> $file_name
echo " proxy_set_header REMOTE_ADDR \$remote_addr; " >> $file_name
echo " proxy_set_header REMOTE_PORT \$remote_port; " >> $file_name
echo " proxy_set_header Host \$host;" >> $file_name
echo "" >> $file_name
echo " location / {" >> $file_name
echo " proxy_pass http://$cus_ip:$https_port;" >> $file_name
echo " }" >> $file_name
echo "}" >> $file_name
}
_str=""
getK8sConditionStr(){
_str="${_str}
if ( \$host ~* .*-${1}.q-gp.com ) {
set \$ip ${2};
}
"
}
createK8sNginxConf(){
file_name=$1
echo "server { " >> $file_name
echo " listen 80 default; " >> $file_name
echo " server_name _; " >> $file_name
echo " underscores_in_headers on; " >> $file_name
echo " proxy_set_header QT_TOKEN \$http_QT_TOKEN; " >> $file_name
echo " proxy_set_header Host \$host; " >> $file_name
echo " proxy_set_header REMOTE_ADDR \$remote_addr; " >> $file_name
echo " proxy_set_header REMOTE_PORT \$remote_port; " >> $file_name
echo " " >> $file_name
echo " set \$ip \"192.168.6.3\"; " >> $file_name
echo " location / { " >> $file_name
echo " ${_str} " >> $file_name
echo " proxy_pass http://\$ip; " >> $file_name
echo " } " >> $file_name
echo "} " >> $file_name
echo " " >> $file_name
echo "server { " >> $file_name
echo " listen 443 ssl; " >> $file_name
echo " server_name *.q-gp.com; " >> $file_name
echo " proxy_set_header QT_TOKEN \$http_QT_TOKEN; " >> $file_name
echo " ssl_certificate /home/q-gp/ssl/certificate.crt; " >> $file_name
echo " ssl_certificate_key /home/q-gp/ssl/private.key; " >> $file_name
echo " ssl_session_cache shared:SSL:1m; " >> $file_name
echo " ssl_session_timeout 5m; " >> $file_name
echo " ssl_ciphers HIGH:!aNULL:!MD5; " >> $file_name
echo " ssl_prefer_server_ciphers on; " >> $file_name
echo " proxy_set_header Host \$host; " >> $file_name
echo " proxy_set_header REMOTE_ADDR \$remote_addr; " >> $file_name
echo " proxy_set_header REMOTE_PORT \$remote_port; " >> $file_name
echo " " >> $file_name
echo " set \$ip \"192.168.6.3\"; " >> $file_name
echo " location / { " >> $file_name
echo " ${_str} " >> $file_name
echo " proxy_pass http://\$ip; " >> $file_name
echo " } " >> $file_name
echo "} " >> $file_name
}
# 数据部要求地址
createNginxHttpAndSSLConf auth-center auth-center-38 192.168.4.193 8099 8099 $nginxname/base.conf
createNginxHttpAndSSLConf h5sp h5sp-25 192.168.4.25 7057 7057 $nginxname/base.conf
# 业务要求
createNginxHttpAndSSLConf h5 h5 192.168.4.13 7051 7051 $nginxname/base.conf
createNginxHttpAndSSLConf qg1 qg1-21 192.168.4.21 9019 9019 $nginxname/base.conf
createNginxHttpAndSSLConf uanguang uanguang 192.168.4.124 80 80 $nginxname/base.conf
createNginxHttpAndSSLConf gongyucheng gongyucheng 192.168.4.254 80 80 $nginxname/base.conf
# 工作目录
createNginxHttpAndSSLConf jen jen 192.168.4.2 8080 8080 $nginxname/base.conf
# 自定义服务
createNginxHttpAndSSLConf qa qa 172.30.220.22 80 80 $nginxname/base.conf
createNginxHttpAndSSLConf qg qg 172.30.220.22 10087 10087 $nginxname/base.conf
createNginxHttpAndSSLConf bp bp 172.30.220.22 10084 10084 $nginxname/base.conf
createNginxHttpAndSSLConf qahelp qahelp 172.30.220.22 8000 8000 $nginxname/base.conf
createNginxHttpAndSSLConf store store 172.30.220.22 9000 9000 $nginxname/base.conf
createNginxHttpAndSSLConf atm atm 172.30.220.43 80 80 $nginxname/base.conf
createNginxHttpAndSSLConf acs acs 172.30.220.43 8585 8585 $nginxname/base.conf
createNginxHttpAndSSLConf a a 172.30.220.22 80 80 $nginxname/base.conf
createNginxHttpAndSSLConf mock mock 172.30.220.22 8080 8080 $nginxname/base.conf
createNginxHttpAndSSLConf mockapi mockapi 172.30.220.22 80 80 $nginxname/base.conf
createNginxHttpAndSSLConf mockm mockm 172.30.220.22 9010 9010 $nginxname/base.conf
for ip_last in ${ips[@]}
do
IP_host=`sh $pwd_path_0/get-ip.sh $ip_last`
ip_arr=(${IP_host//./ })
ipfirst="${ip_arr[0]}.${ip_arr[1]}.${ip_arr[2]}"
iplast="${ip_arr[3]}"
ip_last_repeat=${ip_last//./-}
projectAndPorts=`node $config_server/get_project_config.js -type multi -attr port -attr2 true`
for projectAndPort in ${projectAndPorts[@]}
do
var=(${projectAndPort//|/ })
project_name="${var[0]}"
sub_doman="${var[0]}-${ip_last_repeat}"
target_ip="$IP_host"
http_port="${var[1]}"
https_port="${var[1]}"
file_name="$nginxname/$target_ip.conf"
createNginxHttpAndSSLConf $project_name $sub_doman $target_ip $http_port $https_port $file_name
done
done
_str=""
for host_name in ${dockernamespace[@]}
do
namespace=(${host_name//|/ })
getK8sConditionStr ${namespace[0]} ${namespace[1]}:${namespace[2]}
done
createK8sNginxConf $nginxname/k8s.conf
nginx -s reload
# 3 log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# 2 '$status $body_bytes_sent "$http_referer" '
# 1 '"$http_user_agent" "$http_x_forwarded_for" "$http_QT_TOKEN"';
# 23 server_names_hash_bucket_size 10240;
# 1 sendfile on;
# 2 tcp_nopush on;
# 15 access_log logs/k8s.log main;
# 16 error_log logs/k8s_error.log;
# 17 default_type text/plain;
# content_by_lua '
# ngx.say(ngx.var.ip);
# ';
\ No newline at end of file
#!/bin/bash
nginxname="/usr/local/openresty/nginx/conf/conf.d"
rm -rf $nginxname/$1.conf
nginx -s reload
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment