소스 검색

add some old dockerfile example

krrish 7 년 전
부모
커밋
152e0a5541
56개의 변경된 파일2268개의 추가작업 그리고 0개의 파일을 삭제
  1. 33 0
      old-docker-example/authcenter-server/Dockerfile_data
  2. 27 0
      old-docker-example/authcenter-server/Dockerfile_server
  3. BIN
      old-docker-example/authcenter-server/cas_lib/libcas.so.1.1.3
  4. BIN
      old-docker-example/authcenter-server/cas_lib/libhiredis.so
  5. BIN
      old-docker-example/authcenter-server/cas_lib/libjson.so
  6. BIN
      old-docker-example/authcenter-server/cas_lib/liblicenseClient.so
  7. BIN
      old-docker-example/authcenter-server/cas_lib/liblogsuite.so.1.1.6
  8. 142 0
      old-docker-example/authcenter-server/docker_authcenterserver_build.sh
  9. 106 0
      old-docker-example/authcenter-server/start.sh
  10. 41 0
      old-docker-example/authcenter-web/Dockerfile_data
  11. 21 0
      old-docker-example/authcenter-web/Dockerfile_web
  12. 66 0
      old-docker-example/authcenter-web/docker_authcenterweb_build.sh
  13. 17 0
      old-docker-example/authcenter-web/start.sh
  14. 37 0
      old-docker-example/cas_server/Dockerfile_data
  15. 22 0
      old-docker-example/cas_server/Dockerfile_server
  16. 162 0
      old-docker-example/cas_server/docker_casserver_build.sh
  17. 148 0
      old-docker-example/cas_server/start.sh
  18. 41 0
      old-docker-example/cas_web/Dockerfile_data
  19. 22 0
      old-docker-example/cas_web/Dockerfile_web
  20. 72 0
      old-docker-example/cas_web/docker_casweb_build.sh
  21. 12 0
      old-docker-example/cas_web/start.sh
  22. 41 0
      old-docker-example/dcmp-pc/Dockerfile_data
  23. 21 0
      old-docker-example/dcmp-pc/Dockerfile_pc
  24. 69 0
      old-docker-example/dcmp-pc/docker_dcmppc_build.sh
  25. 16 0
      old-docker-example/dcmp-pc/start.sh
  26. 35 0
      old-docker-example/dcmp-server/Dockerfile_data
  27. 24 0
      old-docker-example/dcmp-server/Dockerfile_server
  28. 172 0
      old-docker-example/dcmp-server/docker_dcmpserver_build.sh
  29. 122 0
      old-docker-example/dcmp-server/start.sh
  30. 41 0
      old-docker-example/dcmp-web/Dockerfile_data
  31. 21 0
      old-docker-example/dcmp-web/Dockerfile_web
  32. 66 0
      old-docker-example/dcmp-web/docker_dcmpweb_build.sh
  33. 18 0
      old-docker-example/dcmp-web/start.sh
  34. 79 0
      old-docker-example/guard/.drone.yml
  35. 19 0
      old-docker-example/guard/Dockerfile
  36. 8 0
      old-docker-example/guard/readme.md
  37. 79 0
      old-docker-example/ivlss/.drone.yml
  38. 14 0
      old-docker-example/ivlss/Dockerfile
  39. 21 0
      old-docker-example/ivlss/README.md
  40. BIN
      old-docker-example/ivlss/ivlss
  41. 48 0
      old-docker-example/ivlss/ivlss.conf
  42. 79 0
      old-docker-example/lslb/.drone.yml
  43. 44 0
      old-docker-example/lslb/Dockerfile
  44. 48 0
      old-docker-example/lslb/docker/conf/conf.lua.tpl
  45. 8 0
      old-docker-example/lslb/readme.md
  46. 14 0
      old-docker-example/mvlss/Dockerfile
  47. BIN
      old-docker-example/mvlss/mvlss
  48. 8 0
      old-docker-example/mvlss/readme.md
  49. 15 0
      old-docker-example/srs/Dockerfile
  50. 12 0
      old-docker-example/srs/forward.master.conf
  51. 11 0
      old-docker-example/srs/origin.conf
  52. BIN
      old-docker-example/srs/srs
  53. 41 0
      old-docker-example/ues-web/Dockerfile_data
  54. 21 0
      old-docker-example/ues-web/Dockerfile_web
  55. 71 0
      old-docker-example/ues-web/docker_uesweb_build.sh
  56. 13 0
      old-docker-example/ues-web/start.sh

+ 33 - 0
old-docker-example/authcenter-server/Dockerfile_data

@@ -0,0 +1,33 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/authcenter/server-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/authcenter/server-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/authcenter/server-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/authcenter/server-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/authcenter/authcenter_server
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software .
+COPY version .
+COPY start.sh .
+COPY image_version .
+
+# chmod start.sh
+RUN chmod +x start.sh
+
+# volume used by cas server
+VOLUME ${MODULE_HOME}/../
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 27 - 0
old-docker-example/authcenter-server/Dockerfile_server

@@ -0,0 +1,27 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/authcenter/server:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/authcenter/server:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/authcenter/server:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/authcenter/server:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/authcenter/authcenter_server
+
+
+# install the pg client(change to your logic)
+RUN yum -y install postgresql openssl
+RUN yum -y install python-setuptools  
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup, last "tail" is necessary
+CMD ./start.sh && \
+    sleep 20 && \
+    tail -f ../log/*

BIN
old-docker-example/authcenter-server/cas_lib/libcas.so.1.1.3


BIN
old-docker-example/authcenter-server/cas_lib/libhiredis.so


BIN
old-docker-example/authcenter-server/cas_lib/libjson.so


BIN
old-docker-example/authcenter-server/cas_lib/liblicenseClient.so


BIN
old-docker-example/authcenter-server/cas_lib/liblogsuite.so.1.1.6


+ 142 - 0
old-docker-example/authcenter-server/docker_authcenterserver_build.sh

@@ -0,0 +1,142 @@
+#!/bin/sh
+
+PROPERTIES="build.properties"
+PRODUCT_NAME="AUTHCENTER_SERVER"
+DEPENDENCY="dependencies"
+
+RED_COLOE='\E[31m'
+GREEN_COLOR='\E[32m'
+YELLOW_COLOR='\E[33m'
+BLUE_COLOR='\E[34m'
+
+REDB_COLOE='\E[1;31m'
+GREENB_COLOR='\E[1;32m'
+YELLOWB_COLOR='\E[1;33m'
+BLUEB_COLOR='\E[1;34m'
+
+RES='\E[0m'
+
+log_info() {
+    echo -e "${GREEN_COLOR}$1${RES}"
+}
+
+log_info_wait() {
+    echo -en "${GREEN_COLOR}$1${RES}"
+}
+
+log_error() {
+    echo -e "${REDB_COLOE}$1${RES}"
+}
+
+log_success() {
+    echo -e "${GREENB_COLOR}$1${RES}"
+}
+
+clean_up() {
+    rm -rf ${BUILD}
+    exit 1
+}
+
+die() {
+    log_error "$1"
+    clean_up
+}
+
+trap clean_up SIGINT SIGTERM
+
+
+
+if [ ! -f ${PROPERTIES} ]; then
+    die "${PROPERTIES} is not exists."
+fi
+
+NEName="AuthCenter_Server"
+Version=$(grep 'ProductVersion=' ${PROPERTIES} | cut -d'=' -f2)
+Module=$(grep 'Module=' ${PROPERTIES} | cut -d'=' -f2)
+Provider="SVI 视维"
+BuildTime=$(date +"%Y-%m-%d %H:%M:%S")
+BuildVersion=$(date +"%Y%m%d")
+
+OUTPUT="output"
+
+OUTPUTPATH="${PWD}/output/"
+rm -rf ${OUTPUTPATH}
+mkdir -p ${OUTPUTPATH}
+
+cd ..
+PYINSTALLERBUILD=pyinstaller_build
+PYINSTALLERDIST=pyinstaller_dist
+SOURCEFILE=authcenter.py
+PYINSTALLSOFTWARE=${PYINSTALLERDIST}/software
+PYINSTALLERNAME=${SOURCEFILE%.*}
+log_info_wait "Start to Pyinstaller ..."
+rm -rf ${PYINSTALLERDIST}
+pyinstaller --distpath ${PYINSTALLERDIST} --workpath ${PYINSTALLERBUILD} ${SOURCEFILE}
+
+mv ${PYINSTALLERDIST}/${PYINSTALLERNAME} ${PYINSTALLSOFTWARE}
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -arf ./sql/ ${PYINSTALLSOFTWARE}
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -r ./etc/ ${PYINSTALLSOFTWARE}
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+mkdir -p ${PYINSTALLSOFTWARE}/logsuite
+cp -af docker_conf/docker_authcenter.conf ${PYINSTALLSOFTWARE}/etc/authcenter.conf
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -af docker_conf/docker_logdb.conf ${PYINSTALLSOFTWARE}/logsuite/logdb.conf
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -af logsuite/LogSuite.conf ${PYINSTALLSOFTWARE}/logsuite/LogSuite.conf
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -af docker_conf/docker_casclient.ini ${PYINSTALLSOFTWARE}/etc/casclient.ini
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -ar casclient/cas_lib ${PYINSTALLSOFTWARE}
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+cp -ar docker/* ${PYINSTALLERDIST}
+if [ $? -ne 0 ]; then
+    die " [FAIL]"
+fi
+
+pwd
+touch version
+echo "NEName=${NEName}" > version
+echo "Version=${Version}" >> version
+echo "Provider=${Provider}" >> version
+echo "BuildTime=${BuildTime}" >> version
+
+mv version ${PYINSTALLERDIST}
+PACKAGENAME=${PRODUCT_NAME}_${Version}_${BuildVersion}_${Module}
+mv ${PYINSTALLERDIST} ${PACKAGENAME}
+log_info_wait "Start to pack ${NEName}..."
+# SVNVERSION=$(svnversion -c |sed 's/^.*://' |sed 's/[A-Z]*$//')
+tar -zcvf ${OUTPUTPATH}/${PRODUCT_NAME}_${Version}_${BuildVersion}_${Module}.tar.gz ${PACKAGENAME} --exclude=.svn &> /dev/null
+if [ $? -eq 0 ]; then
+    log_success " [OK]"
+else
+    die " [FAIL]"
+fi
+
+rm -rf ${PACKAGENAME} ${PYINSTALLERBUILD} *.spec
+exit 0

+ 106 - 0
old-docker-example/authcenter-server/start.sh

@@ -0,0 +1,106 @@
+#!/bin/bash
+
+echo "starting program.."
+
+# wait for pg startup
+echo "Checking postgres server health.."
+wait-for-it.sh postgres.authcenter:5432 -t 0 
+
+# wait for lb startup
+echo "Checking postgres server health.."
+wait-for-it.sh wisecloud.authcenter:5432 -t 0 
+
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+echo "Checking redis server health.."
+wait-for-it.sh redis.redis:7000 -t 0 
+
+
+MODULE_HOME=/opt/wisecloud/authcenter/authcenter_server
+CONF_FILE=${MODULE_HOME}/etc/authcenter.conf
+CAS_FILE=${MODULE_HOME}/etc/casclient.ini
+LOG_DB=${MODULE_HOME}/logsuite/logdb.conf
+SQL_FILE=${MODULE_HOME}/sql/authcenter.sql
+REDIS_PASSWORD=`curl http://rancher-metadata/latest/stacks/redis/services/redis/metadata/REDIS_PASSWORD 2>/dev/null`
+
+if [ -z "${REDIS_PASSWORD}" ]
+then
+    REDIS_PASSWORD="123456"
+fi
+
+touch base_encrypt.py
+(
+cat << EOF
+#!/usr/bin/env python
+#! -*- coding: utf-8 -*-
+
+import base64
+import sys
+
+def base_encrypt(str):
+    en_str = base64.encodestring(str)
+    print en_str
+    return en_str
+
+base_encrypt(sys.argv[1])
+EOF
+) > base_encrypt.py
+
+pg_password=`echo $(python base_encrypt.py ${POSTGRES_PASSWORD})`
+
+rm -rf base_encrypt.py
+
+sed -i '/BuildTime/aStartTime=' version
+
+sed -i "s#user.*#user=${POSTGRES_USER}#" ${CONF_FILE}
+sed -i "s#pass.*#pass=${pg_password}#" ${CONF_FILE}
+
+sed -i "s#password.*#password:${REDIS_PASSWORD}#" ${CAS_FILE}
+
+sed -i "s#usrid.*#usrid=${POSTGRES_USER}#" ${LOG_DB}
+sed -i "s#passwd.*#passwd=${pg_password}#" ${LOG_DB}
+
+# insert sql when there is no dbName=authcenter
+if [ -f "${SQL_FILE}" ]
+then
+    sleep 5
+    record_count=`psql -h wisecloud.authcenter -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" \
+    -tc "SELECT value FROM t_authcenter_conf where id='3';" |egrep -v "\-|value|\+" | xargs 2>/dev/null`
+    
+    echo "##### record_count=$record_count"
+    
+    if [ "${record_count}" != "/opt/wisecloud/authcenter/authcenter_server/etc" ]; then
+    
+        echo "Begin to create db ${POSTGRES_DB}.."
+        psql -h wisecloud.authcenter -p 5432 "dbname=postgres user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -c "CREATE DATABASE ${POSTGRES_DB}"; 
+        [ $? -eq 0 ] && echo "create db ${POSTGRES_DB} success" || echo "warning: create db ${POSTGRES_DB} failed, mybe the db already exist" 
+        
+        echo "Begin to import sql file.."
+        sleep 5
+        psql -h wisecloud.authcenter -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -f ${SQL_FILE}
+        [ $? -eq 0 ] && echo "import ${SQL_FILE} success" || { echo "import ${SQL_FILE} failed";  exit 1 ; }
+        
+        rm -rf ${SQL_FILE}
+    
+    fi
+    
+    
+fi
+
+yes | cp cas_lib/libcas.so.1.1.3  ./libcas.so
+yes | cp cas_lib/liblogsuite.so.1.1.6  ./liblogsuite.so
+yes | cp cas_lib/libjson.so ./libjson.so
+yes | cp cas_lib/libjson.so ./libjson.so
+yes | cp cas_lib/libhiredis.so   ./libhiredis.so.0.13
+yes | cp cas_lib/liblicenseClient.so   ./liblicenseClient.so
+
+cd ${MODULE_HOME}
+
+rm -rf /opt/wisecloud/authcenter/run
+mkdir -p /opt/wisecloud/authcenter/run
+
+./authcenter
+
+
+

+ 41 - 0
old-docker-example/authcenter-web/Dockerfile_data

@@ -0,0 +1,41 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/authcenter/web-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/authcenter/web-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/authcenter/web-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/authcenter/web-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/authcenter/authcenter_web
+
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software software
+COPY start.sh .
+COPY version .
+COPY image_version .
+
+# chmod to startup.sh
+RUN chmod +x start.sh
+
+# untar app to MODULE_HOME
+RUN tar -xzvf software/nginx.tar.gz -C .
+
+# cp web source to nginx
+COPY software/src nginx/html/src
+RUN yes | cp nginx/conf/docker_nginx.conf nginx/conf/nginx.conf
+
+# volume used by authcenter server
+VOLUME ${MODULE_HOME}
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 21 - 0
old-docker-example/authcenter-web/Dockerfile_web

@@ -0,0 +1,21 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/authcenter/web:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/authcenter/web:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/authcenter/web:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/authcenter/web:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/authcenter/authcenter_web
+
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup
+CMD ./start.sh && tail -f nginx/log/*

+ 66 - 0
old-docker-example/authcenter-web/docker_authcenterweb_build.sh

@@ -0,0 +1,66 @@
+#!/bin/sh
+
+buildDir=/home/sviauto/.jenkins/workspace/
+jobID="Docker_Authcenter_web"
+webdir="AUTHCENTER_WEB"
+ver="V01R01B16"
+module="release"
+curday=$(date +%Y%02m%02d)
+desdir="output"
+
+
+packageData()
+{
+    cd ${buildDir}${jobID}
+    
+    rm -rf .svn
+    
+    #产生version文件
+    echo "NEName=$webdir" > version
+    echo "Version=$ver" >> version
+    echo "Provider=Sowell 视维" >> version
+    echo "BuildTime=$curday" >> version
+
+    cp -r src/ software
+
+    #创建打包输出目录
+    if [ -d ${desdir} ]
+    then
+        rm -rf ${desdir} 
+        mkdir -p ${desdir}
+    else
+        mkdir -p ${desdir}
+    fi
+
+    echo "***开始打包!"
+    
+    #进入output目录
+    cd ${desdir}
+
+    #创建包目录
+    if [ -d ${webdir}_${ver}_${curday}_${module} ]
+    then
+        rm -rf ${webdir}_${ver}_${curday}_${module}
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    else
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    fi
+
+    cd ${webdir}_${ver}_${curday}_${module}
+    #复制需要的所有打包文件到此目录下
+    cp -r ${buildDir}${jobID}/software .
+    cp ${buildDir}${jobID}/version .
+    cp -rp ${buildDir}${jobID}/docker/* .    
+    
+    cd ..
+
+    #打包命令
+    tar -zcf $webdir"_"$ver"_"$curday"_"$module.tar.gz ${webdir}_${ver}_${curday}_${module}
+    rm -rf ${webdir}_${ver}_${curday}_${module}
+    echo "***打包结束!"
+
+}
+
+packageData;
+
+exit 0;

+ 17 - 0
old-docker-example/authcenter-web/start.sh

@@ -0,0 +1,17 @@
+#!/bin/bash
+
+# wait for server app to startup
+echo "Checking authcenter server health.."
+wait-for-it.sh server.authcenter:8888 -t 0 
+
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+echo "Starting program.."
+cd ${MODULE_HOME}
+
+ps -ef |grep nginx | grep -v grep | awk '{print $2}' | xargs  kill -9  &>/dev/null
+./nginx/sbin/nginx -c conf/nginx.conf -p ./nginx/
+
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"
+

+ 37 - 0
old-docker-example/cas_server/Dockerfile_data

@@ -0,0 +1,37 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/cas/server-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/cas/server-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/authcenter/server-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/authcenter/server-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/cas/cas_server
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+RUN mkdir software
+COPY software ./software
+COPY sql ./sql
+COPY version .
+COPY start.sh .
+COPY image_version .  
+
+
+# chmod start.sh
+RUN chmod +x start.sh
+
+# volume used by cas server
+VOLUME ${MODULE_HOME}
+
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 22 - 0
old-docker-example/cas_server/Dockerfile_server

@@ -0,0 +1,22 @@
+# VERSION 1.0
+
+# pull: 
+#   docker pull registry.svicloud.com/wisecloud/cas/server:v0.1
+
+# build:
+#   docker build -f Dockerfile_data -t registry.svicloud.com/wisecloud/cas/server:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/cas/cas_server
+
+
+# install the pg client(change to your logic)
+RUN yum -y install postgresql
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup, last "tail" is necessary
+CMD ./start.sh && tail

+ 162 - 0
old-docker-example/cas_server/docker_casserver_build.sh

@@ -0,0 +1,162 @@
+#!/bin/bash
+
+PROPERTIES="build.properties"
+module_server="CAS_SERVER"
+DEPENDENCY="dependency"
+
+RED_COLOE='\E[31m'
+GREEN_COLOR='\E[32m'
+YELLOW_COLOR='\E[33m'
+BLUE_COLOR='\E[34m'
+
+REDB_COLOE='\E[1;31m'
+GREENB_COLOR='\E[1;32m'
+YELLOWB_COLOR='\E[1;33m'
+BLUEB_COLOR='\E[1;34m'
+
+RES='\E[0m'
+
+log_info() {
+    echo -e "${GREEN_COLOR}$1${RES}"
+}
+
+log_info_wait() {
+    echo -en "${GREEN_COLOR}$1${RES}"
+}
+
+log_error() {
+    echo -e "${REDB_COLOE}$1${RES}"
+}
+
+log_success() {
+    echo -e "${GREENB_COLOR}$1${RES}"
+}
+
+clean_up() {
+    rm -rf ${BUILD}
+    exit 1
+}
+
+die() {
+    log_error "$1"
+    clean_up
+}
+
+CAS_CODE_DIR="/home/sviauto/.jenkins/workspace/Docker_CAS_server"
+TAGS_DIR="${CAS_CODE_DIR}/cas/tags_dir"
+
+bulid(){
+BULID_DIR="${CAS_CODE_DIR}/cas/bulid_dir"
+if [ -d ${BULID_DIR} ]; then
+    echo "${BULID_DIR} exits."
+    rm -rf ${BULID_DIR} 
+    mkdir -p ${BULID_DIR}
+else
+    echo "${BULID_DIR} not exits."
+    mkdir -p ${BULID_DIR}
+fi
+cd ${BULID_DIR}
+if [  -f "${BULID_DIR}/dist/CAS" ]; then
+    echo "CAS exe exits."
+    rm -rf CAS
+fi
+echo "${CAS_CODE_DIR}/src/CAS.py"
+pyinstaller -F "${CAS_CODE_DIR}/src/CAS.py"
+if [ $? -ne 0 ]; then
+   die "[bulid FAIL]"
+else
+    echo " [bulid OK]"
+fi
+}
+
+cp_exe() {
+if [  -d ${TAGS_DIR} ]; then
+    echo "${TAGS_DIR} exits."
+    rm -rf ${TAGS_DIR}  
+    mkdir -p ${TAGS_DIR}
+else
+    echo "${TAGS_DIR} not exits."
+    mkdir -p ${TAGS_DIR}
+fi
+cd ${TAGS_DIR}
+mkdir "software"
+mkdir "sql"
+if [  -f "${BULID_DIR}/dist/CAS" ]; then
+    cp "${BULID_DIR}/dist/CAS" "${TAGS_DIR}/software/"
+else
+    echo "CAS exe not exits."
+    exit 0
+fi
+
+if [ $? -ne 0 ]; then
+    die "[cp exe FAIL]"
+else
+    log_success "[cp exe OK]"
+fi
+}
+
+cp_utils(){
+cp -r ${CAS_CODE_DIR}/src/utils ${TAGS_DIR}/software/
+if [ ! -d "${TAGS_DIR}/software/utils" ];then
+    die "cp casclient FAIL"
+    exit 0
+else
+    log_success "cp utils success"
+    cd ${TAGS_DIR}/software/utils/casclient
+    rm -rf *.py
+    cd ../logsuite
+    rm -rf *.py 
+fi
+
+cp ${CAS_CODE_DIR}/src/docker_conf.ini  ${TAGS_DIR}/software/conf.ini
+cp -r ${CAS_CODE_DIR}/src/lib ${TAGS_DIR}/software/
+cp -rp ${CAS_CODE_DIR}/docker/* ${TAGS_DIR}/
+cp ${CAS_CODE_DIR}/etc/docker_setup.sql  ${TAGS_DIR}/sql/setup.sql
+cp ${CAS_CODE_DIR}/src/utils/casclient/docker_casclient.ini      ${TAGS_DIR}/software/utils/casclient/casclient.ini
+cp ${CAS_CODE_DIR}/src/utils/logsuite/docker_logdb.conf     ${TAGS_DIR}/software/utils/logsuite/logdb.conf
+}
+
+NEName="CAS_server"
+Version=$(grep 'ProductVersion=' ${CAS_CODE_DIR}/build/build.properies | cut -d'=' -f2)
+Module=$(grep 'Module=' ${CAS_CODE_DIR}/build/build.properies | cut -d'=' -f2)
+Provider="Sowell 视维"
+BuildTime=$(date +"%Y-%m-%d %H:%M:%S")
+BuildVersion=$(date +"%Y%m%d")
+
+
+write_version(){
+echo "NEName=${NEName}" > ${TAGS_DIR}/version
+echo "Version=${Version}"
+echo "Version=${Version}" >> ${TAGS_DIR}/version
+echo "Provider=${Provider}" >> ${TAGS_DIR}/version
+echo "BuildTime=${BuildTime}" >> ${TAGS_DIR}/version
+}
+
+tags_dir(){
+cd ${CAS_CODE_DIR}/cas
+mv  tags_dir ${module_server}_${Version}_${BuildVersion}_${Module}
+
+TAG=${module_server}_${Version}_${BuildVersion}_${Module}
+tar -zcvf ${module_server}_${Version}_${BuildVersion}_${Module}.tar.gz  ${TAG} --exclude=.svn
+if [ $? -eq 0 ]; then
+    log_success " [OK]"
+else
+    die " [FAIL]"
+fi
+rm -rf ${TAG}
+
+}
+#安装依赖�?
+
+#编译
+bulid
+#cp可执行程�?
+cp_exe
+#cp工具和sql、以及命�?
+cp_utils
+#写版�?
+write_version
+#打包
+tags_dir
+
+exit 0

+ 148 - 0
old-docker-example/cas_server/start.sh

@@ -0,0 +1,148 @@
+#!/bin/bash
+
+echo "Starting program.."
+
+# wait for pg startup
+echo "Checking cas postgres server health.."
+wait-for-it.sh postgres.cas:5432 -t 0
+
+# wait for lb startup
+echo "Checking cas postgres server health.."
+wait-for-it.sh wisecloud.cas:5432 -t 0
+
+# wait for redis startup
+echo "Checking redis server health.."
+wait-for-it.sh redis.redis:7000 -t 0
+
+
+MODULE_HOME=/opt/wisecloud/cas/cas_server
+CAS_MAIN_CONF=${MODULE_HOME}/software/conf.ini
+LOG_DB=${MODULE_HOME}/software/utils/logsuite/logdb.conf
+SQL_FILE=${MODULE_HOME}/sql/setup.sql
+CAS_CLIENT_CONF=${MODULE_HOME}/software/utils/casclient/casclient.ini
+
+# replace the password of cas postgres
+sed -i "/^ *username =/s/.*/username = $POSTGRES_USER/g" $CAS_MAIN_CONF
+sed -i "/^ *password =/s/.*/password = $POSTGRES_PASSWORD/g" $CAS_MAIN_CONF
+
+
+# replace the redis password
+REDIS_PASSWORD=`curl http://rancher-metadata/latest/stacks/redis/services/redis/metadata/REDIS_PASSWORD`
+[ "$REDIS_PASSWORD" = "Not found" ] && unset REDIS_PASSWORD
+REDIS_PASSWORD=${REDIS_PASSWORD:-123456}
+sed -i "/password_redis/s/.*/password_redis = $REDIS_PASSWORD/g" $CAS_MAIN_CONF
+
+
+sed -i "/usrid/s/.*/usrid=$POSTGRES_USER/g" $LOG_DB
+sed -i "/passwd/s/.*/passwd=$POSTGRES_PASSWORD/g" $LOG_DB
+
+sed -i "/password/s/.*/password:$REDIS_PASSWORD/g" $CAS_CLIENT_CONF
+
+
+# copy the lib
+echo "copy the libs"
+yes | cp -rLfap ${MODULE_HOME}/software/utils/lib/* /usr/lib/
+ln -s /usr/lib/libcas.so.1.1.4      /usr/lib/libcas.so
+ln -s /usr/lib/liblogsuite.so.1.1.6 /usr/lib/liblogsuite.so
+ldconfig
+
+
+# insert sql once
+if [ -f "${SQL_FILE}" ]
+then
+
+    # get the env uuid
+    env_uuid=`curl http://rancher-metadata/latest/self/host/environment_uuid`
+    echo "the env uuid is: $env_uuid"
+    
+
+    # check env_data
+    if ping -c3 google.com &>/dev/null; then
+      domain_name=console.hk.svicloud.com:8080
+      # get the env name
+      SVICLOUD_ACCESS_KEY=${SVICLOUD_ACCESS_KEY:-7F52BB62596A3D3A4C5E}
+      SVICLOUD_SECRET_KEY=${SVICLOUD_SECRET_KEY:-pQcMx2trz7PhDwq7vC1oPUth1N6RobWsYUNv7JEm}
+    else
+      domain_name=console.svicloud.com:8090
+      # get the env name
+      SVICLOUD_ACCESS_KEY=${SVICLOUD_ACCESS_KEY:-F2A3DB5C0FE1247EC6A4}
+      SVICLOUD_SECRET_KEY=${SVICLOUD_SECRET_KEY:-AigNiQYKhPszMX5Jc79UfaCKsczY9owkX1v1cjVB}
+    fi
+    
+    for ((m=0; m<=100; m++)); do
+    
+        env_data=`curl "http://$domain_name/v1/project" --user ${SVICLOUD_ACCESS_KEY}:${SVICLOUD_SECRET_KEY}  \
+        -H "Upgrade-Insecure-Requests: 1"  2>/dev/null | jq .data`
+    
+        # echo -e "env_data:\n$env_data"
+    
+        if echo $env_data | grep -q name; then
+            break
+        else
+            sleep 5
+            echo "retry to get project data $m times"
+            continue
+        fi
+        
+        if [ $m -ge 100 ]; then
+            echo "failed to get project data"
+            exit 1
+        fi
+    done
+
+    
+    # another stupid method :)
+    # # get the list count
+    # env_data_list_count=`echo "$env_data" | jq '. | length'`
+    
+    # # loop to search the key
+    # for ((m=0; m<=$[env_data_list_count - 1]; m++)); do
+    
+        # if echo "$env_data" | jq .[$m] | grep -wq $env_uuid; then
+            # env_name=`echo "${env_data}" | jq .[$m].name | xargs`
+            # break
+        # fi
+    # done
+    
+    env_name=`echo "$env_data" | jq ".[] | select(.uuid==\"$env_uuid\") | .name" | xargs`
+    
+    # print the env_name
+    [ -z "$env_name" ] && { echo "error: can not get the env name"; exit 1 ; } || echo "env name: $env_name"
+    
+    
+    # replace the sql file
+    sed -i "s/{{TUNA}}/wisecloud.tuna.${env_name}.sviyun.com/" $SQL_FILE
+    sed -i "s/{{AUTHCENTER}}/wisecloud.authcenter.${env_name}.sviyun.com/" $SQL_FILE
+    sed -i "s/{{CAS}}/wisecloud.cas.${env_name}.sviyun.com/" $SQL_FILE
+    sed -i "s/{{DCMP}}/wisecloud.dcmp.${env_name}.sviyun.com/" $SQL_FILE
+    
+    echo "replaced internat domain to internet domain in SQL_FILE"
+
+    sleep 5
+    
+    operator_updater=`psql -h wisecloud.cas -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" \
+    -tc "SELECT updater FROM operator where id='1';" | egrep -v "\-|value|\+" | xargs 2>/dev/null`
+    
+    echo "##### operator_updater=$operator_updater"
+  
+    if [ "${operator_updater}" != "admin" ]; then
+    
+        echo "Begin to create db ${POSTGRES_DB}.."
+        psql -h wisecloud.cas -p 5432 "dbname=postgres user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -c "CREATE DATABASE ${POSTGRES_DB}"; 
+        [ $? -eq 0 ] && echo "create db ${POSTGRES_DB} success" || echo "warning: create db ${POSTGRES_DB} failed, mybe the db already exist" 
+        
+        echo "Begin to import sql file.."
+        sleep 5
+        psql -h wisecloud.cas -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -f ${SQL_FILE}
+        [ $? -eq 0 ] && echo "import ${SQL_FILE} success" || { echo "import ${SQL_FILE} failed";  exit 1 ; }
+        
+        rm -rf ${SQL_FILE}
+    
+    fi
+  
+fi
+
+# start
+cd ${MODULE_HOME}/software
+./CAS --port=8822
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"

+ 41 - 0
old-docker-example/cas_web/Dockerfile_data

@@ -0,0 +1,41 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/cas/web-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/cas/web-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/cas/web-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/cas/web-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/cas/cas_web
+
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software software
+COPY start.sh .
+COPY version .
+COPY image_version .
+
+# chmod to startup.sh
+RUN chmod +x start.sh
+
+# untar app to MODULE_HOME
+RUN tar -xzvf software/nginx.tar.gz -C .
+
+# cp web source to nginx
+COPY software/src nginx/html/src
+RUN yes | cp nginx/conf/docker_nginx.conf nginx/conf/nginx.conf
+
+# volume used by cas server
+VOLUME ${MODULE_HOME}
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 22 - 0
old-docker-example/cas_web/Dockerfile_web

@@ -0,0 +1,22 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/cas/web:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/cas/web:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/cas/web:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/cas/web:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/cas/cas_web
+
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup
+CMD ./start.sh && tail -f nginx/log/*
+

+ 72 - 0
old-docker-example/cas_web/docker_casweb_build.sh

@@ -0,0 +1,72 @@
+#!/bin/sh
+
+
+
+buildDir=/home/sviauto/.jenkins/workspace/
+jobID="Docker_CAS_web"
+webdir="CAS_WEB"
+ver="V01R01B16"
+module="release"
+curday=$(date +%Y%02m%02d)
+desdir="output"
+
+
+packageData()
+{
+    cd ${buildDir}${jobID}
+    
+    rm -rf .svn
+    
+    #产生version文件
+    echo "NEName=$webdir" > version
+    echo "Version=$ver" >> version
+    echo "Provider=Sowell 视维" >> version
+    echo "BuildTime=$curday" >> version
+
+    cp -r src/ software
+
+    #创建打包输出目录
+    if [ -d ${desdir} ]
+    then
+        rm -rf ${desdir} 
+        mkdir -p ${desdir}
+    else
+        mkdir -p ${desdir}
+    fi
+
+    echo "***开始打包!"
+    
+    #进入output目录
+    cd ${desdir}
+
+    #创建包目录
+    if [ -d ${webdir}_${ver}_${curday}_${module} ]
+    then
+        rm -rf ${webdir}_${ver}_${curday}_${module}
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    else
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    fi
+
+    cd ${webdir}_${ver}_${curday}_${module}
+
+    #复制需要的所有打包文件到此目录下
+
+    cp -r ${buildDir}${jobID}/software .
+    cp ${buildDir}${jobID}/version .
+    cp ${buildDir}${jobID}/docker/* .
+
+    
+    cd ..
+
+    #打包命令
+    tar -zcf $webdir"_"$ver"_"$curday"_"$module.tar.gz ${webdir}_${ver}_${curday}_${module}
+    rm -rf ${webdir}_${ver}_${curday}_${module}
+    echo "***打包结束!"
+
+}
+
+packageData;
+
+exit 0;
+

+ 12 - 0
old-docker-example/cas_web/start.sh

@@ -0,0 +1,12 @@
+#!/bin/bash
+
+# wait for server app to startup
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+echo "Starting program.."
+cd ${MODULE_HOME}
+
+ps -ef |grep nginx | grep -v grep | awk '{print $2}' | xargs  kill -9  &>/dev/null
+./nginx/sbin/nginx -c conf/nginx.conf -p ./nginx/
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"

+ 41 - 0
old-docker-example/dcmp-pc/Dockerfile_data

@@ -0,0 +1,41 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/pc-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/pc-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/pc-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/pc-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_pc
+
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software software
+COPY start.sh .
+COPY version .
+COPY image_version .
+
+# chmod to startup.sh
+RUN chmod +x start.sh
+
+# untar app to MODULE_HOME
+RUN tar -xzvf software/nginx.tar.gz -C .
+
+# cp web source to nginx
+COPY software/dist nginx/html/dist
+RUN yes | cp nginx/conf/docker_nginx.conf nginx/conf/nginx.conf
+
+# volume used by ues server
+VOLUME ${MODULE_HOME}
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 21 - 0
old-docker-example/dcmp-pc/Dockerfile_pc

@@ -0,0 +1,21 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/pc:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/pc:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/pc:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/pc:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_pc
+
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup
+CMD ./start.sh && tail -f nginx/log/*

+ 69 - 0
old-docker-example/dcmp-pc/docker_dcmppc_build.sh

@@ -0,0 +1,69 @@
+#!/bin/sh
+
+
+buildDir=/home/sviauto/.jenkins/workspace/
+jobID="Docker_DCMP_PC"
+webdir="DCMP_PC"
+ver="V01R01B14"
+module="release"
+curday=$(date +%Y%02m%02d)
+
+desdir="output"
+
+
+packageData()
+{
+    cd ${buildDir}${jobID}
+    
+    rm -rf .svn
+    
+    #产生version文件
+    echo "NEName=$webdir" > version
+    echo "Version=$ver" >> version
+    echo "Provider=Sowell 视维" >> version
+    echo "BuildTime=$curday" >> version
+
+    mv dist/ software
+
+    #创建打包输出目录
+    if [ -d ${desdir} ]
+    then
+        rm -rf ${desdir} 
+        mkdir -p ${desdir}
+    else
+        mkdir -p ${desdir}
+    fi
+
+    echo "***开始打包!"
+    
+    #进入output目录
+    cd ${desdir}
+
+    #创建包目录
+    if [ -d ${webdir}_${ver}_${curday}_${module} ]
+    then
+        rm -rf ${webdir}_${ver}_${curday}_${module}
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    else
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    fi
+
+    cd ${webdir}_${ver}_${curday}_${module}
+    #复制需要的所有打包文件到此目录下
+    cp -r ${buildDir}${jobID}/software .
+    cp ${buildDir}${jobID}/version .
+    cp ${buildDir}${jobID}/docker/* .
+    
+    cd ..
+
+    #打包命令
+    tar -zcf $webdir"_"$ver"_"$curday"_"$module.tar.gz ${webdir}_${ver}_${curday}_${module}
+    rm -rf ${webdir}_${ver}_${curday}_${module}
+    echo "***打包结束!"
+
+}
+
+packageData;
+
+exit 0;
+

+ 16 - 0
old-docker-example/dcmp-pc/start.sh

@@ -0,0 +1,16 @@
+#!/bin/bash
+
+echo "Starting program.."
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+echo "Checking dcmp server health.."
+wait-for-it.sh server.dcmp:8000 -t 0 
+
+cd ${MODULE_HOME}
+
+ps -ef |grep nginx | grep -v grep | awk '{print $2}' | xargs kill -9 &>/dev/null
+./nginx/sbin/nginx -c conf/nginx.conf -p ./nginx/
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"
+
+

+ 35 - 0
old-docker-example/dcmp-server/Dockerfile_data

@@ -0,0 +1,35 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/server-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/server-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/server-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/server-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_server
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software ./software
+COPY sql ./sql
+COPY version .
+COPY start.sh .
+COPY image_version .
+
+# chmod start.sh
+RUN chmod +x start.sh
+
+# volume used by cas server
+VOLUME ${MODULE_HOME}
+
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 24 - 0
old-docker-example/dcmp-server/Dockerfile_server

@@ -0,0 +1,24 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/server:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/server:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/server:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/server:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_server
+
+
+# install the pg client(change to your logic)
+RUN yum -y install postgresql
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup, last "tail" is necessary
+CMD ./start.sh && tail -f data/log/*

+ 172 - 0
old-docker-example/dcmp-server/docker_dcmpserver_build.sh

@@ -0,0 +1,172 @@
+#!/bin/bash
+
+
+PROPERTIES="build.properties"
+module_server="DCMP_SERVER"
+DEPENDENCY="dependency"
+
+RED_COLOE='\E[31m'
+GREEN_COLOR='\E[32m'
+YELLOW_COLOR='\E[33m'
+BLUE_COLOR='\E[34m'
+
+REDB_COLOE='\E[1;31m'
+GREENB_COLOR='\E[1;32m'
+YELLOWB_COLOR='\E[1;33m'
+BLUEB_COLOR='\E[1;34m'
+
+RES='\E[0m'
+
+log_info() {
+    echo -e "${GREEN_COLOR}$1${RES}"
+}
+
+log_info_wait() {
+    echo -en "${GREEN_COLOR}$1${RES}"
+}
+
+log_error() {
+    echo -e "${REDB_COLOE}$1${RES}"
+}
+
+log_success() {
+    echo -e "${GREENB_COLOR}$1${RES}"
+}
+
+clean_up() {
+    rm -rf ${BUILD}
+    exit 1
+}
+
+die() {
+    log_error "$1"
+    clean_up
+}
+PARAMNUM=$#
+if [ "$PARAMNUM" -ne "2" ];then
+    echo "-p project_name"
+    echo "demo: sh build.sh -p DCMP_Server"
+    exit 1
+fi
+
+DCMP_CODE_DIR="/home/sviauto/.jenkins/workspace/Docker_DCMP_server"
+TAGS_DIR="${DCMP_CODE_DIR}/dcmp/tags_dir"
+
+bulid(){
+BULID_DIR="${DCMP_CODE_DIR}/dcmp/bulid_dir"
+if [ -d ${BULID_DIR} ]; then
+    echo "${BULID_DIR} exits."
+    rm -rf ${BULID_DIR} 
+    mkdir -p ${BULID_DIR}
+else
+    echo "${BULID_DIR} not exits."
+    mkdir -p ${BULID_DIR}
+fi
+cd ${BULID_DIR}
+if [  -f "${BULID_DIR}/dist/dcmpServer" ]; then
+    echo "dcmpServer exe exits."
+    rm -rf dcmpServer
+fi
+echo "${DCMP_CODE_DIR}/src/dcmpServer.py"
+pyinstaller -F "${DCMP_CODE_DIR}/src/dcmpServer.py"
+if [ $? -ne 0 ]; then
+   die "[bulid FAIL]"
+else
+    echo " [bulid OK]"
+fi
+}
+
+cp_exe() {
+if [  -d ${TAGS_DIR} ]; then
+    echo "${TAGS_DIR} exits."
+    rm -rf ${TAGS_DIR}  
+    mkdir -p ${TAGS_DIR}
+else
+    echo "${TAGS_DIR} not exits."
+    mkdir -p ${TAGS_DIR}
+fi
+cd ${TAGS_DIR}
+mkdir "sql"
+mkdir "software"
+if [  -f "${BULID_DIR}/dist/dcmpServer" ]; then
+    cp "${BULID_DIR}/dist/dcmpServer" "${TAGS_DIR}/software/"
+else
+    echo "dcmpServer exe not exits."
+    exit 0
+fi
+
+if [ $? -ne 0 ]; then
+    die "[cp exe FAIL]"
+else
+    log_success "[cp exe OK]"
+fi
+}
+
+cp_utils(){
+cp -r ${DCMP_CODE_DIR}/src/utils ${TAGS_DIR}/software/
+if [ ! -d "${TAGS_DIR}/software/utils" ];then
+    die "cp utils FAIL"
+    exit 0
+else
+    log_success "cp utils  success"
+    cd "${TAGS_DIR}/software/utils"
+    pwd
+    rm -rf ./*/*.py 
+    rm -rf *.py
+fi
+
+cp ${DCMP_CODE_DIR}/src/utils/docker_config.ini  ${TAGS_DIR}/software/utils/config.ini
+cp -r ${DCMP_CODE_DIR}/src/lib ${TAGS_DIR}/
+cp -rp ${DCMP_CODE_DIR}/docker/* ${TAGS_DIR}
+cp ${DCMP_CODE_DIR}/etc/* ${TAGS_DIR}/sql/
+
+cp ${DCMP_CODE_DIR}/src/utils/casclient/docker_casclient.ini    ${TAGS_DIR}/software/utils/casclient/casclient.ini 
+cp ${DCMP_CODE_DIR}/src/utils/authclient/docker_licenseclient.conf    ${TAGS_DIR}/software/utils/authclient/licenseclient.conf 
+cp ${DCMP_CODE_DIR}/src/utils/logsuite/docker_logdb.conf    ${TAGS_DIR}/software/utils/logsuite/logdb.conf       
+
+}
+
+NEName="DCMP_SERVER"
+Version=$(grep 'ProductVersion=' ${DCMP_CODE_DIR}/build/build.properies | cut -d'=' -f2)
+Module=$(grep 'Module=' ${DCMP_CODE_DIR}/build/build.properies | cut -d'=' -f2)
+Provider="Sowell 视维"
+BuildTime=$(date +"%Y-%m-%d %H:%M:%S")
+BuildVersion=$(date +"%Y%m%d")
+
+
+write_version(){
+echo "NEName=${NEName}" > ${TAGS_DIR}/version
+echo "Version=${Version}"
+echo "Version=${Version}" >> ${TAGS_DIR}/version
+echo "Provider=${Provider}" >> ${TAGS_DIR}/version
+echo "BuildTime=${BuildTime}" >> ${TAGS_DIR}/version
+}
+tags_dir(){
+cd ${DCMP_CODE_DIR}/dcmp
+cp -r  tags_dir ${module_server}_${Version}_${BuildVersion}_${Module}
+
+TAG=${module_server}_${Version}_${BuildVersion}_${Module}
+tar -zcvf ${module_server}_${Version}_${BuildVersion}_${Module}.tar.gz  ${TAG} --exclude=.svn
+if [ $? -eq 0 ]; then
+    log_success " [OK]"
+else
+    die " [FAIL]"
+fi
+rm -rf ${TAG}
+
+}
+#安装依赖�?
+
+#编译
+bulid
+#cp可执行程�?
+cp_exe
+#cp工具和sql、以及命�?
+cp_utils
+#写版�?
+write_version
+#打包
+tags_dir
+
+exit 0
+

+ 122 - 0
old-docker-example/dcmp-server/start.sh

@@ -0,0 +1,122 @@
+#!/bin/bash
+
+echo "starting program.."
+
+# wait for pg startup
+echo "Checking postgres server health.."
+wait-for-it.sh postgres.dcmp:5432 -t 0
+
+# wait for lb startup
+echo "Checking postgres server health.."
+wait-for-it.sh wisecloud.dcmp:5432 -t 0
+
+
+REDIS_PASSWORD=`curl http://rancher-metadata/latest/stacks/redis/services/redis/metadata/REDIS_PASSWORD`
+SQL_FILE=${MODULE_HOME}/sql/setup.sql
+lib_path=${MODULE_HOME}/software/utils/lib
+
+[ "$REDIS_PASSWORD" = "Not found" ] && unset REDIS_PASSWORD
+REDIS_PASSWORD=${REDIS_PASSWORD:-123456}
+
+
+if [ -d ${lib_path}  ];then
+    chmod -R 755 ${lib_path}
+    if [ ! -f /usr/lib/libhiredis.so  ];then
+    
+    yes|cp ${lib_path}/libhiredis.so /usr/lib
+    
+    fi
+    
+    if [ ! -f /usr/lib/libhiredis_vip.so  ];then
+    
+    yes|cp ${lib_path}/libhiredis_vip.so /usr/lib
+    
+    fi
+    
+    
+    
+    if [ ! -f /usr/lib/libjson.so  ];then
+    
+    yes|cp ${lib_path}/libjson.so /usr/lib
+    
+    fi
+    
+    
+    
+    if [ ! -f /usr/lib/liblogsuite.so.1.1.6  ];then
+    
+    rm -f /usr/lib/liblogsuite.so
+    
+    yes|cp ${lib_path}/liblogsuite.so.1.1.6 /usr/lib
+    
+    ln -s /usr/lib/liblogsuite.so.1.1.6 /usr/lib/liblogsuite.so
+    ln -s /usr/lib/liblogsuite.so.1.1.6 /usr/lib64/liblogsuite.so
+    
+    else
+    
+    rm -f /usr/lib/liblogsuite.so
+    
+    ln -s /usr/lib/liblogsuite.so.1.1.6 /usr/lib/liblogsuite.so
+    ln -s /usr/lib/liblogsuite.so.1.1.6 /usr/lib64/liblogsuite.so
+    
+    fi
+    
+    
+    
+    if [ ! -f /usr/lib/libcas.so.1.1.3  ];then
+    
+    rm -f /usr/lib/libcas.so
+    
+    yes|cp ${lib_path}/libcas.so.1.1.3 /usr/lib
+    
+    ln -s /usr/lib/libcas.so.1.1.3 /usr/lib/libcas.so
+    ln -s /usr/lib/libcas.so.1.1.3 /usr/lib64/libcas.so
+    
+    else
+    
+    rm -f /usr/lib/libcas.so
+    
+    ln -s /usr/lib/libcas.so.1.1.3 /usr/lib/libcas.so
+    ln -s /usr/lib/libcas.so.1.1.3 /usr/lib64/libcas.so
+    
+    fi
+
+fi
+
+ldconfig
+
+sed -i "s/password.*/password:${REDIS_PASSWORD}/g" ${MODULE_HOME}/software/utils/casclient/casclient.ini
+
+sed -i "s/usrid.*/usrid= ${POSTGRES_USER}/g" ${MODULE_HOME}/software/utils/logsuite/logdb.conf
+sed -i "s/passwd.*/passwd = ${POSTGRES_USER}/g" ${MODULE_HOME}/software/utils/logsuite/logdb.conf
+
+sed -i "s/username.*/username = ${POSTGRES_USER}/g" ${MODULE_HOME}/software/utils/config.ini
+sed -i "s/password.*/password = ${POSTGRES_PASSWORD}/g" ${MODULE_HOME}/software/utils/config.ini
+
+if [ -f "${SQL_FILE}" ]
+then
+    sleep 5
+    gw_port=`psql -h wisecloud.dcmp -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" \
+    -tc "SELECT dict_name FROM t_dictionary where id='6';" |egrep -v "\-|value|\+" | xargs 2>/dev/null`
+    
+    echo "##### gw_port=$gw_port"
+    
+    if [ "${gw_port}" != "gateway_port" ]; then
+    
+        echo "Begin to create db ${POSTGRES_DB}.."
+        psql -h wisecloud.dcmp -p 5432 "dbname=postgres user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -c "CREATE DATABASE ${POSTGRES_DB}"; 
+        [ $? -eq 0 ] && echo "create db ${POSTGRES_DB} success" || echo "warning: create db ${POSTGRES_DB} failed, mybe the db already exist" 
+        
+        echo "Begin to import sql file.."
+        sleep 5
+        psql -h wisecloud.dcmp -p 5432 "dbname=${POSTGRES_DB} user=${POSTGRES_USER} password=${POSTGRES_PASSWORD}" -f ${SQL_FILE}
+        [ $? -eq 0 ] && echo "import ${SQL_FILE} success" || { echo "import ${SQL_FILE} failed";  exit 1 ; }
+        
+        rm -rf ${SQL_FILE}
+    
+    fi
+fi
+cd ${MODULE_HOME}
+
+./software/dcmpServer --port=8000
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"

+ 41 - 0
old-docker-example/dcmp-web/Dockerfile_data

@@ -0,0 +1,41 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/web-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/web-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/web-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/web-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_web
+
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software software
+COPY start.sh .
+COPY version .
+COPY image_version .
+
+# chmod to startup.sh
+RUN chmod +x start.sh
+
+# untar app to MODULE_HOME
+RUN tar -xzvf software/nginx.tar.gz -C .
+
+# cp web source to nginx
+COPY software/dist nginx/html/dist
+RUN yes | cp nginx/conf/docker_nginx.conf nginx/conf/nginx.conf
+
+# volume used by dcmp server
+VOLUME ${MODULE_HOME}
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 21 - 0
old-docker-example/dcmp-web/Dockerfile_web

@@ -0,0 +1,21 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/dcmp/web:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/dcmp/web:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/dcmp/web:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/dcmp/web:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/dcmp/dcmp_web
+
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup
+CMD ./start.sh && tail -f nginx/log/*

+ 66 - 0
old-docker-example/dcmp-web/docker_dcmpweb_build.sh

@@ -0,0 +1,66 @@
+#!/bin/sh
+
+buildDir=/home/sviauto/.jenkins/workspace/
+jobID="Docker_DCMP_web"
+webdir="DCMP_WEB"
+ver="V01R01B08"
+module="release"
+curday=$(date +%Y%02m%02d)
+desdir="output"
+
+
+packageData()
+{
+    cd ${buildDir}${jobID}
+    
+    rm -rf .svn
+    
+    #产生version文件
+    echo "NEName=$webdir" > version
+    echo "Version=$ver" >> version
+    echo "Provider=Sowell 视维" >> version
+    echo "BuildTime=$curday" >> version
+
+    mv dist/ software
+
+    #创建打包输出目录
+    if [ -d ${desdir} ]
+    then
+        rm -rf ${desdir} 
+        mkdir -p ${desdir}
+    else
+        mkdir -p ${desdir}
+    fi
+
+    echo "***开始打包!"
+    
+    #进入output目录
+    cd ${desdir}
+
+    #创建包目录
+    if [ -d ${webdir}_${ver}_${curday}_${module} ]
+    then
+        rm -rf ${webdir}_${ver}_${curday}_${module}
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    else
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    fi
+
+    cd ${webdir}_${ver}_${curday}_${module}
+    #复制需要的所有打包文件到此目录下
+    cp -r ${buildDir}${jobID}/software .
+    cp ${buildDir}${jobID}/version .
+    cp ${buildDir}${jobID}/docker/* .
+    cd ..
+
+    #打包命令
+    tar -zcf $webdir"_"$ver"_"$curday"_"$module.tar.gz ${webdir}_${ver}_${curday}_${module}
+    rm -rf ${webdir}_${ver}_${curday}_${module}
+    echo "***打包结束!"
+
+}
+
+packageData;
+
+exit 0;
+

+ 18 - 0
old-docker-example/dcmp-web/start.sh

@@ -0,0 +1,18 @@
+#!/bin/bash
+
+
+# wait for cas server startup
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+# wait for server app to startup
+echo "Checking dcmp server health.."
+wait-for-it.sh server.dcmp:8000 -t 0 
+
+echo "Starting program.."
+cd ${MODULE_HOME}
+
+ps -ef |grep nginx | grep -v grep | awk '{print $2}' | xargs kill -9 &>/dev/null
+./nginx/sbin/nginx -c conf/nginx.conf -p ./nginx/
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"
+

+ 79 - 0
old-docker-example/guard/.drone.yml

@@ -0,0 +1,79 @@
+pipeline:
+  notify_begin_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    template: "<{{build.link}}|Deployment #{{build.number}} started> on <http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+    when:
+      branch: [ master, staging ]
+
+
+  # drone deploy octocat/hello-world 24 staging
+  push_image_to_test_registry:
+    image: plugins/docker
+    registry: tyn.ar3qvx.com
+    repo: tyn.ar3qvx.com/tmp/dongcj_test
+    docker_image: dongcj/centos7
+    tags: latest
+
+    # Manage Secrets.
+    secrets: [ docker_username, docker_password ]
+
+
+  # for rancher
+  publish_to_test_env:
+    image: peloton/drone-rancher
+    url: http://tyn.ar3qvx.com:8080
+    access_key: 936F7879DDC49BFC5EFC
+    secret_key: gM9Ncq8yX4R4f1nea6SLNqM49Rvpd4yu8m5TbfeL
+    service: testdrone/testservice
+    docker_image: dongcj/centos7
+    start_first: false
+    confirm: true
+    timeout: 240
+    batch_size: 5
+
+
+  test_stage:
+    image: dongcj/webshell
+    confirm: true
+    timeout: 240
+    commands:
+      - sleep 20
+
+  notify_test_stage:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success ]
+    template: "<{{build.link}}|Deployment #{{build.number}} success> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+
+  notify_end_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success, failure ]
+    template: "<{{build.link}}|Deployment #{{build.number}} stop> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+  notify_end_email:
+    image: drillster/drone-email
+    host: smtp.mxhichina.com
+    skip_verify: false
+    username: admin@dongcj.com
+    password: Dcj85509336
+    from: drone@svicloud.com
+    recipients: [ dongchaojun@svi-tech.com.cn, admin@svicloud.com ]
+    recipients_only: false
+    when:
+      status: [ changed, failure ]
+    

+ 19 - 0
old-docker-example/guard/Dockerfile

@@ -0,0 +1,19 @@
+## usage
+# build: docker build -t <registry>/<product>/<app>:<version> .
+# push : docker push <registry>/<product>/<app>:<version>
+
+FROM dongcj/centos7
+MAINTAINER whoami
+
+ENV MODULE_HOME /opt/wisecloud/cdn
+ENV PACKAGE_URL "http://svicloud.s3.amazonaws.com/guard.tar.gz"
+
+## creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+## copy app to MODULE_HOME
+RUN rm -rf /tmp/* && wget -N -P /tmp/ ${PACKAGE_URL}
+RUN cd /tmp &&  tar -zxf *.tar.gz -C ${MODULE_HOME}
+
+## command run at startup
+CMD ./guard start && tail -f *.log

+ 8 - 0
old-docker-example/guard/readme.md

@@ -0,0 +1,8 @@
+
+# Build status
+
+[![Build
+Status](http://lb.drone.pro.pioas.com:8000/api/badges/cloud/dockerfile-cdn/status.svg)](http://lb.drone.pro.pioas.com:8000/cloud/dockerfile-cdn)
+
+# Demo
+

+ 79 - 0
old-docker-example/ivlss/.drone.yml

@@ -0,0 +1,79 @@
+pipeline:
+  notify_begin_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    template: "<{{build.link}}|Deployment #{{build.number}} started> on <http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+    when:
+      branch: [ master, staging ]
+
+
+  # drone deploy octocat/hello-world 24 staging
+  push_image_to_test_registry:
+    image: plugins/docker
+    registry: tyn.ar3qvx.com
+    repo: tyn.ar3qvx.com/tmp/dongcj_test
+    docker_image: dongcj/centos7
+    tags: latest
+
+    # Manage Secrets.
+    secrets: [ docker_username, docker_password ]
+
+
+  # for rancher
+  publish_to_test_env:
+    image: peloton/drone-rancher
+    url: http://tyn.ar3qvx.com:8080
+    access_key: 936F7879DDC49BFC5EFC
+    secret_key: gM9Ncq8yX4R4f1nea6SLNqM49Rvpd4yu8m5TbfeL
+    service: testdrone/testservice
+    docker_image: dongcj/centos7
+    start_first: false
+    confirm: true
+    timeout: 240
+    batch_size: 5
+
+
+  test_stage:
+    image: dongcj/webshell
+    confirm: true
+    timeout: 240
+    commands:
+      - sleep 20
+
+  notify_test_stage:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success ]
+    template: "<{{build.link}}|Deployment #{{build.number}} success> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+
+  notify_end_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success, failure ]
+    template: "<{{build.link}}|Deployment #{{build.number}} stop> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+  notify_end_email:
+    image: drillster/drone-email
+    host: smtp.mxhichina.com
+    skip_verify: false
+    username: admin@dongcj.com
+    password: Dcj85509336
+    from: drone@svicloud.com
+    recipients: [ dongchaojun@svi-tech.com.cn, admin@svicloud.com ]
+    recipients_only: false
+    when:
+      status: [ changed, failure ]
+    

+ 14 - 0
old-docker-example/ivlss/Dockerfile

@@ -0,0 +1,14 @@
+
+FROM dongcj/centos7
+
+# copy files
+COPY ivlss /usr/local/bin
+COPY ivlss.conf /usr/local/bin/
+RUN chmod a+x /usr/local/bin/ivlss
+
+
+# change path to app home
+WORKDIR /usr/local/bin
+
+# startup, last "tail" is necessary
+CMD ./ivlss -c ./ivlss.conf && tail

+ 21 - 0
old-docker-example/ivlss/README.md

@@ -0,0 +1,21 @@
+
+采集:ivlss,中转:mvlss,边缘:evlss
+
+
+# 采集端口:
+    RTMP: 1935
+    API:  1985
+    TS:   13818
+
+# 中转端口:
+    RTMP: 1935
+    API: 1985
+    HTTP: 8888
+    TS: 13818
+
+# 边缘端口:
+    RTMP: 1935
+    API: 1985
+    HTTP: 8888
+    TS: 13818
+

BIN
old-docker-example/ivlss/ivlss


+ 48 - 0
old-docker-example/ivlss/ivlss.conf

@@ -0,0 +1,48 @@
+# RTMP监听端口
+listen 1935;
+
+# 最大连接数
+max_connections 1000;
+
+daemon off;
+
+# PID文件路径,不建议修改
+pid /tmp/ivlss.pid;
+
+# 日志文件配置,不建议修改
+srs_log_tank console;
+
+# 服务ID,可采用UUID,也可以采用方便识别的方式命令
+service_id ivlss_xxx;
+
+# IVLSS查询、操作接口服务配置
+http_api {
+    # 启动服务,off关闭服务
+    enabled on;
+
+    # 服务监听端口
+    listen 1985;
+
+    # 支持跨域访问
+    crossdomain on;
+}
+
+# H.265服务配置
+http_ts {
+   # 服务是否启动,默认为on,off表示关闭
+   enabled on;
+   # H.265服务监听端口,若不配置则默认为13818 
+   listen  13818;
+}
+
+# vhost 配置
+# vhost可以理解为一个产品名称
+# 对于RTMP协议,通过如下方式访问:
+# rtmp://<host>:<port>/stream?app=name
+# 不带参数时host就是vhost
+vhost __defaultVhost__ {
+
+    # LiveCDE地址配置
+    # 如:forward 192.168.1.2:8080
+    forward livecde:8886;
+}

+ 79 - 0
old-docker-example/lslb/.drone.yml

@@ -0,0 +1,79 @@
+pipeline:
+  notify_begin_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    template: "<{{build.link}}|Deployment #{{build.number}} started> on <http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+    when:
+      branch: [ master, staging ]
+
+
+  # drone deploy octocat/hello-world 24 staging
+  push_image_to_test_registry:
+    image: plugins/docker
+    registry: tyn.ar3qvx.com
+    repo: tyn.ar3qvx.com/tmp/dongcj_test
+    docker_image: dongcj/centos7
+    tags: latest
+
+    # Manage Secrets.
+    secrets: [ docker_username, docker_password ]
+
+
+  # for rancher
+  publish_to_test_env:
+    image: peloton/drone-rancher
+    url: http://tyn.ar3qvx.com:8080
+    access_key: 936F7879DDC49BFC5EFC
+    secret_key: gM9Ncq8yX4R4f1nea6SLNqM49Rvpd4yu8m5TbfeL
+    service: testdrone/testservice
+    docker_image: dongcj/centos7
+    start_first: false
+    confirm: true
+    timeout: 240
+    batch_size: 5
+
+
+  test_stage:
+    image: dongcj/webshell
+    confirm: true
+    timeout: 240
+    commands:
+      - sleep 20
+
+  notify_test_stage:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success ]
+    template: "<{{build.link}}|Deployment #{{build.number}} success> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+
+  notify_end_slack:
+    image: plugins/slack
+    webhook: https://hooks.slack.com/services/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
+    channel: general
+    username: drone-bot
+    when:
+      branch: [ master, staging ]
+      status: [ success, failure ]
+    template: "<{{build.link}}|Deployment #{{build.number}} stop> on <http://http://tyn.ar3qvx.com:3000/{{repo.owner}}/{{repo.name}}/tree/{{build.branch}}|{{repo.name}}:{{build.branch}}> by: {{build.author}}"
+
+
+  notify_end_email:
+    image: drillster/drone-email
+    host: smtp.mxhichina.com
+    skip_verify: false
+    username: admin@dongcj.com
+    password: Dcj85509336
+    from: drone@svicloud.com
+    recipients: [ dongchaojun@svi-tech.com.cn, admin@svicloud.com ]
+    recipients_only: false
+    when:
+      status: [ changed, failure ]
+    

+ 44 - 0
old-docker-example/lslb/Dockerfile

@@ -0,0 +1,44 @@
+## usage
+# build: docker build -t <registry>/<product>/<app>:<version> .
+# push : docker push <registry>/<product>/<app>:<version>
+
+FROM dongcj/centos7
+MAINTAINER krrish krrishdo@gmail.com
+
+ENV MODULE_HOME /opt/wisecloud/cdn
+ENV PACKAGE_URL "https://svicloud.s3.amazonaws.com/lslb.tar.gz"
+ENV NETTLE_URL  "https://ftp.gnu.org/gnu/nettle/nettle-3.3.tar.gz"
+
+## install dependice
+RUN yum -y update && \
+    yum makecache fast && \
+    yum -y install libtermcap-devel ncurses-devel libevent-devel && \
+    yum -y install readline-devel openssl-devel postgresql-devel && \
+    yum -y install pcre-devel gcc patch unzip make m4 supervisor
+
+## install nettle
+RUN curl -sSL ${NETTLE_URL} | tar zxvf - -C /tmp && \
+    cd /tmp/nettle-3.3 && \
+    ./configure --prefix=/usr --disable-static && \
+    make && \
+    make install
+
+## creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}/lslb
+
+## copy app to MODULE_HOME
+RUN curl -sSL ${PACKAGE_URL} | tar zxvf - -C ${MODULE_HOME}
+
+
+## overwrite config files
+ADD docker/*.sh   /usr/local/bin/
+ADD docker/conf/  /usr/local/
+
+RUN chmod a+x /usr/local/bin/*.sh
+
+######### Startup 
+## Port to be expose
+EXPOSE 18081
+
+## command run at startup
+CMD ["start.sh"]

+ 48 - 0
old-docker-example/lslb/docker/conf/conf.lua.tpl

@@ -0,0 +1,48 @@
+local _M = {}
+
+-- datacenter postgresql主数据库的配置
+local m_postgres = {}
+m_postgres['host'] = "18.221.221.161"
+m_postgres['port'] = 35012
+m_postgres['database'] = "sysmanager"
+m_postgres['user'] = "postgres"
+m_postgres['password'] = "CSv3PG.One!!!"
+_M['m_postgres'] = m_postgres
+-- datacenter postgresql从数据库的配置
+local s_postgres = {}
+s_postgres['host'] = "18.221.221.161"
+s_postgres['port'] = 35012
+s_postgres['database'] = "sysmanager"
+s_postgres['user'] = "postgres"
+s_postgres['password'] = "CSv3PG.One!!!"
+_M['s_postgres'] = s_postgres
+
+-- 用户上报请求链接
+_M['lslb_report_url'] = "http://18.221.221.161:8055/DataCollect"
+
+-- lslb异常上报请求连接
+_M['lslb_report_exp_url'] = "http://18.221.221.161:8055/DataCollect/live/exception"
+
+-- vlss最大链接数据的阈值比例
+_M['vlss_conn_percent'] = 0.9
+
+-- 最大上行带宽的额定比例
+_M['bandwidth_percent'] = 0.9
+
+-- safe_code
+_M['safe_code'] = "##svi&&lslb##"
+
+-- 与lslb交互des的密钥,必须是8位
+_M['safe_key'] = "==RiXVKU"
+
+-- dns服务器解析服务配置文件信息路径
+-- 如: /etc/resolv.dnsmasq.conf
+_M['resolver_path'] = "/etc/resolv.dnsmasq.conf"
+
+-- 配置本机slb的host,没有域名[ip:port]形式表示
+--              有域名则是[域名:port]形式表示
+-- 如: 127.0.0.1:8080
+--     www.host.com:8080
+_M['slb_host'] = "lslb.cdn3.pro.pioas.com:18081"
+
+return _M

+ 8 - 0
old-docker-example/lslb/readme.md

@@ -0,0 +1,8 @@
+
+# Build status
+
+[![Build Status](http://lb.drone.pro.pioas.com:8000/api/badges/cdn/lslb/status.svg)](http://lb.drone.pro.pioas.com:8000/cdn/lslb)
+
+
+# Demo
+

+ 14 - 0
old-docker-example/mvlss/Dockerfile

@@ -0,0 +1,14 @@
+
+FROM dongcj/centos7
+
+# copy files
+COPY mvlss /usr/local/bin
+COPY mvlss.conf /usr/local/bin/
+RUN chmod a+x /usr/local/bin/mvlss
+
+
+# change path to app home
+WORKDIR /usr/local/bin
+
+# startup, last "tail" is necessary
+CMD ./mvlss -c ./mvlss.conf && tail

BIN
old-docker-example/mvlss/mvlss


+ 8 - 0
old-docker-example/mvlss/readme.md

@@ -0,0 +1,8 @@
+
+# Build status
+
+[![Build
+Status](http://lb.drone.pro.pioas.com:8000/api/badges/cloud/dockerfile-cdn/status.svg)](http://lb.drone.pro.pioas.com:8000/cloud/dockerfile-cdn)
+
+# Demo
+

+ 15 - 0
old-docker-example/srs/Dockerfile

@@ -0,0 +1,15 @@
+
+FROM dongcj/centos7
+
+# copy files
+COPY srs /usr/local/bin
+COPY *.conf /usr/local/bin/
+RUN chmod a+x /usr/local/bin/srs
+
+
+# change path to app home
+WORKDIR /usr/local/bin
+
+# startup, last "tail" is necessary
+CMD ./srs -c ./origin.conf && \
+    tail -f ../log/*

+ 12 - 0
old-docker-example/srs/forward.master.conf

@@ -0,0 +1,12 @@
+# the config for srs to forward
+# @see https://github.com/ossrs/srs/wiki/v1_CN_SampleForward
+# @see full.conf for detail config.
+
+listen              1935;
+max_connections     1000;
+pid                 /tmp/srs.master.pid;
+daemon              off;
+srs_log_tank        console;
+vhost __defaultVhost__ {
+    forward         127.0.0.1:19350;
+}

+ 11 - 0
old-docker-example/srs/origin.conf

@@ -0,0 +1,11 @@
+# the config for srs origin-edge cluster
+# @see https://github.com/ossrs/srs/wiki/v1_CN_Edge
+# @see full.conf for detail config.
+
+listen              19350;
+max_connections     1000;
+daemon              off;
+srs_log_tank        console;
+pid                 /tmp/origin.pid;
+vhost __defaultVhost__ {
+}

BIN
old-docker-example/srs/srs


+ 41 - 0
old-docker-example/ues-web/Dockerfile_data

@@ -0,0 +1,41 @@
+# VERSION 1.0
+
+# pull: 
+#   test env: reg0.svicloud.com/app/wisecloud/ues/web-data:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/ues/web-data:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/ues/web-data:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/ues/web-data:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/ues/ues_web
+
+
+# creat and enter to MODULE_HOME
+WORKDIR ${MODULE_HOME}
+
+# copy app to MODULE_HOME
+COPY software software
+COPY start.sh .
+COPY version .
+COPY image_version .
+
+# chmod to startup.sh
+RUN chmod +x start.sh
+
+# untar app to MODULE_HOME
+RUN tar -xzvf software/nginx.tar.gz -C .
+
+# cp web source to nginx
+COPY software/dist nginx/html/dist
+RUN yes | cp nginx/conf/docker_nginx.conf nginx/conf/nginx.conf
+
+# volume used by ues server
+VOLUME ${MODULE_HOME}
+
+# command run at startup
+CMD echo "started successful. this container will only start once"
+

+ 21 - 0
old-docker-example/ues-web/Dockerfile_web

@@ -0,0 +1,21 @@
+# VERSION 1.0
+
+# pull:
+#   test env: reg0.svicloud.com/app/wisecloud/ues/web:v0.1
+#   pro  env: reg1.svicloud.com/app/wisecloud/ues/web:v0.1
+
+# build:
+#   test env: docker build -f Dockerfile_data -t reg0.svicloud.com/app/wisecloud/ues/web:v0.1 .
+#   test env: docker build -f Dockerfile_data -t reg1.svicloud.com/app/wisecloud/ues/web:v0.1 .
+
+FROM registry.9418.club/os/svi-centos:latest
+MAINTAINER dongcj "dongchaojun@svi-tech.com.cn"
+
+ENV MODULE_HOME /opt/wisecloud/ues/ues_web
+
+
+# change path to app home
+WORKDIR ${MODULE_HOME}
+
+# startup
+CMD ./start.sh && tail -f nginx/log/*

+ 71 - 0
old-docker-example/ues-web/docker_uesweb_build.sh

@@ -0,0 +1,71 @@
+#!/bin/sh
+
+pwdDir=`pwd`
+buildDir=/home/sviauto/.jenkins/workspace/
+jobID="Docker_UES_web"
+webdir="UES_WEB"
+ver="V01R01B12"
+module="release"
+curday=$(date +%Y%02m%02d)
+desdir="output"
+
+
+packageData()
+{
+    cd ${buildDir}${jobID}
+    
+    rm -rf .svn
+    
+    #产生version文件
+    echo "NEName=$webdir" > version
+    echo "Version=$ver" >> version
+    echo "Provider=Sowell 视维" >> version
+    echo "BuildTime=$curday" >> version
+
+    mv dist/ software
+
+    #创建打包输出目录
+    if [ -d ${desdir} ]
+    then
+        rm -rf ${desdir} 
+        mkdir -p ${desdir}
+    else
+        mkdir -p ${desdir}
+    fi
+
+    echo "***开始打包!"
+    
+    #进入output目录
+    cd ${desdir}
+
+    #创建包目录
+    if [ -d ${webdir}_${ver}_${curday}_${module} ]
+    then
+        rm -rf ${webdir}_${ver}_${curday}_${module}
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    else
+        mkdir -p ${webdir}_${ver}_${curday}_${module}   
+    fi
+
+    cd ${webdir}_${ver}_${curday}_${module}
+
+    #复制需要的所有打包文件到此目录下
+
+    cp -r ${buildDir}${jobID}/software .
+    cp ${buildDir}${jobID}/version .
+    cp ${buildDir}${jobID}/docker/* .
+
+    
+    cd ..
+
+    #打包命令
+    tar -zcf $webdir"_"$ver"_"$curday"_"$module.tar.gz ${webdir}_${ver}_${curday}_${module}
+    rm -rf ${webdir}_${ver}_${curday}_${module}
+    echo "***打包结束!"
+
+}
+
+packageData;
+
+exit 0;
+

+ 13 - 0
old-docker-example/ues-web/start.sh

@@ -0,0 +1,13 @@
+#!/bin/bash
+
+echo "Starting program.."
+
+echo "Checking cas server health.."
+wait-for-it.sh server.cas:8822 -t 0 
+
+cd ${MODULE_HOME}
+
+ps -ef |grep nginx | grep -v grep | awk '{print $2}' | xargs  kill -9  &>/dev/null
+./nginx/sbin/nginx -c conf/nginx.conf -p ./nginx/
+[ $? -eq 0 ] && echo "Start success" || echo "Start failed"
+