You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
224 lines
5.9 KiB
Bash
224 lines
5.9 KiB
Bash
#!/usr/bin/env bash
|
|
echo '==================1.开发环境准备================================'
|
|
echo '1.1请确保安装并java8, git, maven并设置好环境变量'
|
|
echo '1.2请确保安装并docker,docker-compose并设置好环境变量'
|
|
|
|
#确认环境信息准备就绪
|
|
read -r -p "开发环境准备好了吗? [Y/n] " envConfirm
|
|
case $envConfirm in
|
|
[yY][eE][sS]|[yY])
|
|
echo "Yes 继续执行"
|
|
;;
|
|
[nN][oO]|[nN])
|
|
echo "No 终止执行"
|
|
exit 1
|
|
;;
|
|
*)
|
|
echo "Invalid input... 终止执行"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo '==================1.3清理当前脚本启动的容器和产生的镜像(可选的)=============='
|
|
#清理当前脚本启动的容器和产生的镜像(可选的)
|
|
#docker stop sc-rabbitmq sc-redis sc-mysql
|
|
#docker rm sc-rabbitmq sc-redis sc-mysql
|
|
#docker image rm rabbitmq:alpine redis:alpine mysql:9.6-alpine
|
|
|
|
#docker stop sc-monitor-admin sc-authorization-server sc-authentication-server sc-organization sc-gateway-admin sc-gateway-web
|
|
#docker rm sc-monitor-admin sc-authorization-server sc-authentication-server sc-organization sc-gateway-admin sc-gateway-web
|
|
#docker image rm cike/admin cike/authorization-server:latest cike/authentication-server:latest cike/organization:latest cike/gateway-admin:latest cike/gateway-web:latest
|
|
|
|
echo '==================2.安装认证公共包到本地maven仓库=================='
|
|
#安装认证公共包到本地maven仓库
|
|
cd common && mvn install
|
|
echo '当前目录:' && pwd
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================3.安装认证客户端到本地maven仓库=================='
|
|
#安装认证客户端到本地maven仓库
|
|
cd auth/authentication-client && mvn install
|
|
echo '当前目录:' && pwd
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================4.docker-compose启动公共服务==================='
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
echo '==================4.1显示环境变量: docker-compose/.env =========='
|
|
#显示环境变量
|
|
cat ./.env
|
|
echo ''
|
|
|
|
#按需要开启公共服务
|
|
echo '==================4.2启动 mysql or redis or rabbitmq ========'
|
|
docker-compose -f docker-compose.yml up -d mysql
|
|
docker-compose -f docker-compose.yml up -d redis
|
|
docker-compose -f docker-compose.yml up -d rabbitmq
|
|
|
|
echo '当前目录:' && pwd
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================4.3.构建镜像: 配置中心, 消息中心========'
|
|
|
|
#构建镜像:消息中心
|
|
cd ./center/bus
|
|
mvn package && mvn docker:build
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================4.4.启动注册中心, 配置中心, 消息中心============'
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
|
|
#启动注册中心
|
|
docker-compose -f docker-compose.yml -f docker-compose.nacos.yml up -d nacos
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================5.构建镜像并启动网关(gateway)相关服务==============='
|
|
#构建镜像:网关服务
|
|
cd ./gateway/gateway-web
|
|
mvn package && mvn docker:build
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#构建镜像:网关管理服务
|
|
cd ./gateway/gateway-admin
|
|
mvn package && mvn docker:build
|
|
|
|
#确认初始化网关服务的DB:./gateway/gateway-admin/src/main/db
|
|
echo '你可以立即去部署网关服务的DB(脚本路径:./gateway/gateway-admin/src/main/db),然后回来继续...'
|
|
read -r -p "确认网关服务的DB部署好了吗? [Y/n] " gwDbConfirm
|
|
case $gwDbConfirm in
|
|
[yY][eE][sS]|[yY])
|
|
echo "Yes 继续执行"
|
|
;;
|
|
[nN][oO]|[nN])
|
|
echo "No 终止执行"
|
|
exit 1
|
|
;;
|
|
*)
|
|
echo "Invalid input... 终止执行"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
|
|
#启动网关服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.spring-gateway.yml up -d gateway-web
|
|
|
|
#启动网关管理服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.spring-gateway.yml up -d gateway-admin
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================6.构建镜像并启动组织(organization)相关服务=================='
|
|
#构建镜像:组织服务
|
|
cd ./sysadmin/organization
|
|
mvn package && mvn docker:build
|
|
|
|
#确认初始化授权/认证服务的DB:./sysadmin/db
|
|
echo '你可以立即去部署组织服务的DB(脚本路径:./sysadmin/db),然后回来继续...'
|
|
read -r -p "确认部署组织服务的DB部署好了吗? [Y/n] " orgDbConfirm
|
|
case $orgDbConfirm in
|
|
[yY][eE][sS]|[yY])
|
|
echo "Yes 继续执行"
|
|
;;
|
|
[nN][oO]|[nN])
|
|
echo "No 终止执行"
|
|
exit 1
|
|
;;
|
|
*)
|
|
echo "Invalid input... 终止执行"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
|
|
#启动组织服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.auth.yml up -d organization
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================7.构建镜像并启动认证(auth)相关服务=================='
|
|
#构建镜像:认证服务
|
|
cd ./auth/authentication-server
|
|
mvn package && mvn docker:build
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#构建镜像:授权服务
|
|
cd ./auth/authorization-server
|
|
mvn package && mvn docker:build
|
|
|
|
#确认初始化授权/认证服务的DB:./auth/db
|
|
echo '你可以立即去部署授权/认证服务的DB(脚本路径:./auth/db),然后回来继续...'
|
|
read -r -p "确认部署授权/认证服务的DB部署好了吗? [Y/n] " authDbConfirm
|
|
case $authDbConfirm in
|
|
[yY][eE][sS]|[yY])
|
|
echo "Yes 继续执行"
|
|
;;
|
|
[nN][oO]|[nN])
|
|
echo "No 终止执行"
|
|
exit 1
|
|
;;
|
|
*)
|
|
echo "Invalid input... 终止执行"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
|
|
#启动网关服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.auth.yml up -d authorization-server
|
|
|
|
#启动网关管理服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.auth.yml up -d authentication-server
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
echo '==================8.构建镜像并启动监控(monitor)相关服务==============='
|
|
#构建镜像:管理台服务
|
|
cd ./monitor/admin
|
|
mvn package && mvn docker:build
|
|
|
|
#回到根目录
|
|
cd -
|
|
|
|
#去docker-compose目录
|
|
cd docker-compose
|
|
|
|
#启动网关服务
|
|
docker-compose -f docker-compose.yml -f docker-compose.monitor.yml up -d monitor-admin
|
|
|
|
#回到根目录
|
|
cd -
|