diff --git a/k8s/build-java.sh b/k8s/build-java.sh
new file mode 100644
index 00000000..2f9e1d7b
--- /dev/null
+++ b/k8s/build-java.sh
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+baseDir="/home/somuns/ci4s"
+cd $baseDir && mvn clean install
+
+#cd ${baseDir}/ruoyi-modules && mvn install
+if [ $? -ne 0 ]; then
+ echo "Failed to build ruoyi-modules"
+ exit 1
+fi
+
+
+
+
+
+
+
diff --git a/k8s/build-node.sh b/k8s/build-node.sh
new file mode 100644
index 00000000..9805d2ca
--- /dev/null
+++ b/k8s/build-node.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+baseDir="/home/somuns/ci4s"
+cd ${baseDir}/react-ui
+
+npm install
+
+if [ $? -ne 0 ]; then
+ echo "Failed to install npm depend package"
+ exit 1
+fi
+
+
+npm run build
+if [ $? -ne 0 ]; then
+ echo "Failed to build react-ui"
+ exit 1
+fi
+
+
+
diff --git a/k8s/build.sh b/k8s/build.sh
new file mode 100644
index 00000000..384b4e19
--- /dev/null
+++ b/k8s/build.sh
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+#登录到172.20.32.185 环境执行
+baseDir="/home/somuns/ci4s"
+cd ${baseDir}
+
+#拉取master分支的最新代码
+git pull
+if [ $? -ne 0 ]; then
+ echo "拉取代码失败,请检查网络或联系管理员!"
+ exit 1
+fi
+
+if [ -d "${baseDir}/react-ui/dist" ]; then
+ rm -rf ${baseDir}/react-ui/dist
+fi
+
+if [ -f "${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar" ];then
+ rm -rf ${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar
+fi
+
+
+# 编译java
+docker run -v ${baseDir}:${baseDir} -v /home/maven:/home/maven -e http_proxy=http://172.20.32.253:3128 -e https_proxy=http://172.20.32.253:3128 172.20.32.187/ci4s/java-build:jdk8-mvn3.6 ${baseDir}/k8s/build-java.sh
+if [ $? -ne 0 ]; then
+ echo "编译失败,请检查代码!"
+ exit 1
+fi
+
+# 编译node
+docker run -v ${baseDir}:${baseDir} -e http_proxy=http://172.20.32.253:3128 -e https_proxy=http://172.20.32.253:3128 172.20.32.187/ci4s/node:16.16.0 ${baseDir}/k8s/build-node.sh
+if [ $? -ne 0 ]; then
+ echo "编译失败,请检查代码!"
+ exit 1
+fi
+
+
+mkdir -p ${baseDir}/k8s/dockerfiles/jar
+mkdir -p ${baseDir}/k8s/dockerfiles/html
+# 复制jar包
+cp -rf ${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar ${baseDir}/k8s/dockerfiles/jar/management-platform.jar
+if [ $? -ne 0 ]; then
+ echo "复制jar包失败,请检查代码!"
+ exit 1
+fi
+
+# 复制前端文件
+cp -rf ${baseDir}/react-ui/dist/ ${baseDir}/k8s/dockerfiles/html
+if [ $? -ne 0 ]; then
+ echo "复制html文件失败,请检查代码!"
+ exit 1
+fi
+
+sh ${baseDir}/k8s/build_and_deploy_front_managenent.sh
diff --git a/k8s/build_and_deploy_front_managenent.sh b/k8s/build_and_deploy_front_managenent.sh
new file mode 100644
index 00000000..274a8463
--- /dev/null
+++ b/k8s/build_and_deploy_front_managenent.sh
@@ -0,0 +1,68 @@
+#!/bin/bash
+
+bastDir=/home/somuns/ci4s
+cd ${bastDir}/k8s/dockerfiles
+mkdir -p ${bastDir}/k8s/template-yaml/deploy
+
+tag=$(date +'%Y%m%d%H%M')
+managent=172.20.32.187/ci4s/managent:${tag}
+front=172.20.32.187/ci4s/ci4s-front:${tag}
+
+docker build -t ${managent} -f managent-dockerfile .
+
+if [ "$?" -ne "0" ];then
+ echo "buid ${managent} image fail"
+ exit 1
+fi
+
+docker build -t ${front} -f nginx-dockerfile .
+
+if [ "$?" -ne "0" ];then
+ echo "buid ${front} image fail"
+ exit 2
+fi
+
+cd ${bastDir}/k8s/template-yaml
+
+cp -rf k8s-12front.yaml deploy/
+cp -rf k8s-7management.yaml deploy/
+
+cd deploy/
+
+#镜像替换
+sed -i "s#managenent-image#${managent}#g" k8s-7management.yaml
+if [ "$?" -ne "0" ];then
+ echo "replace ${managent} image fail"
+ exit 3
+fi
+
+
+
+sed -i "s#front-image#${front}#g" k8s-12front.yaml
+
+if [ "$?" -ne "0" ];then
+ echo "replace ${front} image fail"
+ exit 4
+fi
+
+
+docker push ${managent}
+docker push ${front}
+
+kubectl apply -n argo -f k8s-7management.yaml
+
+if [ "$?" -ne "0" ];then
+ echo "deploy ${managent} image fail"
+ exit 5
+fi
+
+
+kubectl apply -n argo -f k8s-12front.yaml
+
+if [ "$?" -ne "0" ];then
+ echo "buid ${front} image fail"
+ exit 6
+fi
+
+
+
diff --git a/k8s/new_deploy.sh b/k8s/new_deploy.sh
new file mode 100644
index 00000000..785f34cc
--- /dev/null
+++ b/k8s/new_deploy.sh
@@ -0,0 +1,127 @@
+#!/bin/bash
+
+# 记录开始时间
+start=$(date +%s)
+# 默认参数
+service="manage-front"
+env="dev"
+
+# 解析命令行参数
+while getopts "s:e:" opt; do
+ case $opt in
+ s) service=$OPTARG ;;
+ e) env=$OPTARG ;;
+ \?) echo "Invalid option -$OPTARG" >&2; exit 1 ;;
+ esac
+done
+
+echo "deploy service: $service, env: $env"
+# 根据环境设置 IP 地址
+if [ "$env" == "dev" ]; then
+ remote_ip="172.20.32.181"
+elif [ "$env" == "test" ]; then
+ remote_ip="172.20.32.185"
+else
+ echo "Invalid environment - $env"
+ exit 1
+fi
+
+baseDir=/home/somuns/ci4s
+cd ${baseDir}/k8s/dockerfiles
+mkdir -p ${baseDir}/k8s/template-yaml/deploy
+
+tag=$(date +'%Y%m%d%H%M')
+managent=172.20.32.187/ci4s/managent:${tag}
+front=172.20.32.187/ci4s/ci4s-front:${tag}
+
+remote_deploy_dir=/home/deploy/manage-platform
+manager_yaml=k8s-7management.yaml
+front_yaml=k8s-12front.yaml
+
+# 构建 manage 镜像
+if [ "$service" == "manage-front" ] || [ "$service" == "manage" ]; then
+ cd ${baseDir}/k8s/dockerfiles
+ docker build -t ${managent} -f managent-dockerfile .
+ if [ "$?" -ne "0" ]; then
+ echo "build ${managent} image fail"
+ exit 1
+ fi
+
+ cd ${baseDir}/k8s/template-yaml
+ # 复制 YAML 文件
+ cp -rf ${manager_yaml} deploy/
+ # 镜像替换
+ cd deploy/
+ sed -i "s#managenent-image#${managent}#g" ${manager_yaml}
+ if [ "$?" -ne "0" ];then
+ echo "replace ${managent} image fail"
+ exit 3
+ fi
+ # 推送镜像
+ docker push ${managent}
+ # 部署服务
+ ssh root@$remote_ip "mkdir -p ${remote_deploy_dir} && if [ -f ${remote_deploy_dir}/${manager_yaml} ]; then mv ${remote_deploy_dir}/${manager_yaml} ${remote_deploy_dir}/k8s-7management.yaml.bak; fi"
+ scp ${baseDir}/k8s/template-yaml/deploy/${manager_yaml} root@$remote_ip:${remote_deploy_dir}/${manager_yaml}
+ if [ $? -ne 0 ]; then
+ echo "Failed to copy ${managent} yaml file"
+ exit 1
+ else
+ echo "Successfully copied ${managent} yaml file"
+ fi
+ ssh root@$remote_ip "kubectl apply -n argo -f ${remote_deploy_dir}/${manager_yaml}"
+ if [ $? -ne 0 ]; then
+ echo "Failed to deploy ${managent} image"
+ exit 1
+ else
+ echo "Successfully deployed ${managent} image"
+ fi
+fi
+
+
+# 构建 front 镜像
+if [ "$service" == "manage-front" ] || [ "$service" == "front" ]; then
+ cd ${baseDir}/k8s/dockerfiles
+ docker build -t ${front} -f nginx-dockerfile .
+ if [ "$?" -ne "0" ];then
+ echo "build ${front} image fail"
+ exit 2
+ fi
+
+ # 复制 YAML 文件
+ cd ${baseDir}/k8s/template-yaml
+ cp -rf ${front_yaml} deploy/
+
+ # 镜像替换
+ cd deploy/
+ sed -i "s#front-image#${front}#g" ${front_yaml}
+ if [ "$?" -ne "0" ];then
+ echo "replace ${front} image fail"
+ exit 4
+ fi
+
+
+ # 镜像推送
+ docker push ${front}
+
+ #部署服务
+ ssh root@$remote_ip "mkdir -p ${remote_deploy_dir} && if [ -f ${remote_deploy_dir}/${front_yaml} ]; then mv ${remote_deploy_dir}/${front_yaml} ${remote_deploy_dir}/k8s-12front.yaml.bak; fi"
+ scp ${baseDir}/k8s/template-yaml/deploy/${front_yaml} root@$remote_ip:${remote_deploy_dir}/${front_yaml}
+ if [ $? -ne 0 ]; then
+ echo "Failed to copy ${managent} yaml file"
+ exit 1
+ else
+ echo "Successfully copied ${managent} yaml file"
+ fi
+ ssh root@$remote_ip "kubectl apply -n argo -f ${remote_deploy_dir}/${front_yaml}"
+ if [ $? -ne 0 ]; then
+ echo "Failed to deploy ${front} image"
+ exit 1
+ else
+ echo "Successfully deployed ${front} image"
+ fi
+fi
+
+
+# 记录结束时间
+end=$(date +%s)
+echo "部署成功, 耗时: $((end-start))秒"
diff --git a/k8s/newbuild.sh b/k8s/newbuild.sh
new file mode 100644
index 00000000..dcdef4d9
--- /dev/null
+++ b/k8s/newbuild.sh
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+#记录开始时间
+start=$(date +%s)
+
+# 默认参数
+branch="master"
+service="manage-front"
+env="dev"
+
+#
+show_help() {
+ echo "Usage: $0 [-b branch] [-s service] [-e environment]"
+ echo
+ echo "Options:"
+ echo " -b Branch to deploy"
+ echo " -s Service to deploy (manage-front, manage, front)"
+ echo " -e Environment (e.g., dev, prod)"
+ echo " -h Show this help message"
+}
+
+# 解析命令行选项
+while getopts "b:s:e:h" opt; do
+ case $opt in
+ b) branch=$OPTARG ;;
+ s) service=$OPTARG ;;
+ e) env=$OPTARG ;;
+ h) show_help; exit 0 ;;
+ \?) echo "Invalid option -$OPTARG" >&2; show_help; exit 1 ;;
+ esac
+done
+
+echo "branch: $branch"
+echo "service: $service"
+echo "env: $env"
+
+# 登录到目标环境
+baseDir="/home/somuns/ci4s"
+cd ${baseDir}
+
+# 拉取指定分支的最新代码
+echo "Checking out and pulling branch $branch..."
+git checkout $branch
+if [ $? -ne 0 ]; then
+ echo "切换到分支 $branch 失败,请检查分支名称是否正确!"
+ exit 1
+fi
+
+git pull origin $branch
+if [ $? -ne 0 ]; then
+ echo "拉取代码失败,请检查网络或联系管理员!"
+ exit 1
+fi
+
+# 创建目录
+mkdir -p ${baseDir}/k8s/dockerfiles/jar
+mkdir -p ${baseDir}/k8s/dockerfiles/html
+
+if [ "$service" == "manage-front" ] || [ "$service" == "front" ]; then
+ # 清理前端构建文件
+ if [ -d "${baseDir}/react-ui/dist" ]; then
+ rm -rf ${baseDir}/react-ui/dist
+ fi
+
+ # 编译前端
+ docker run -v ${baseDir}:${baseDir} \
+ -e http_proxy=http://172.20.32.253:3128 -e https_proxy=http://172.20.32.253:3128 \
+ 172.20.32.187/ci4s/node:16.16.0 ${baseDir}/k8s/build-node.sh
+ if [ $? -ne 0 ]; then
+ echo "编译失败,请检查代码!"
+ exit 1
+ fi
+
+ # 复制前端文件
+ cp -rf ${baseDir}/react-ui/dist/ ${baseDir}/k8s/dockerfiles/html
+ if [ $? -ne 0 ]; then
+ echo "复制html文件失败,请检查代码!"
+ exit 1
+ fi
+fi
+
+if [ "$service" == "manage-front" ] || [ "$service" == "manage" ]; then
+ # 清理java构建文件
+ if [ -f "${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar" ]; then
+ rm -rf ${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar
+ fi
+
+ # 编译java
+ docker run -v ${baseDir}:${baseDir} -v /home/maven:/home/maven \
+ -e http_proxy=http://172.20.32.253:3128 -e https_proxy=http://172.20.32.253:3128 \
+ 172.20.32.187/ci4s/build:v1 ${baseDir}/k8s/build-java.sh
+ if [ $? -ne 0 ]; then
+ echo "编译失败,请检查代码!"
+ exit 1
+ fi
+
+ # 复制jar包
+ cp -rf ${baseDir}/ruoyi-modules/management-platform/target/management-platform.jar ${baseDir}/k8s/dockerfiles/jar/management-platform.jar
+ if [ $? -ne 0 ]; then
+ echo "复制jar包失败,请检查代码!"
+ exit 1
+ fi
+fi
+
+
+# 构建和部署
+sh ${baseDir}/k8s/new_deploy.sh -s $service -e $env
+# 记录结束时间
+end=$(date +%s)
+
+#计算运行时间
+runtime=$((end-start))
+echo "编译和发布成功,耗时:$runtime 秒"
diff --git a/settings.xml b/settings.xml
new file mode 100644
index 00000000..d0fe0f07
--- /dev/null
+++ b/settings.xml
@@ -0,0 +1,274 @@
+
+
+
+
+
+
+
+ /home/maven/repository
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ alimaven
+ aliyun maven
+ http://maven.aliyun.com/nexus/content/groups/public/
+ central
+
+
+
+
+
+
+
+
+ myjdk
+
+ true
+ 1.8
+
+
+ 1.8
+ 1.8
+ 1.8
+
+
+
+
+
+
+
+ myjdk
+
+
\ No newline at end of file
diff --git a/settings.xml.bak b/settings.xml.bak
new file mode 100644
index 00000000..e27c579c
--- /dev/null
+++ b/settings.xml.bak
@@ -0,0 +1,257 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+