2
0

feat: enhance build and setup

This commit is contained in:
zhangsz
2024-12-30 10:12:54 +08:00
parent c43c799ae0
commit 25f17f91bb
22 changed files with 372 additions and 201 deletions

View File

@@ -4,6 +4,7 @@ wfc_work_dir=/opt/wfc
docker_work_dir=${wfc_work_dir}/docker
src_service_dir=${wfc_work_dir}/systemd/system
dst_service_dir=/etc/systemd/system
java_work_dir=${docker_work_dir}/java
base_dockers="wfc-nacos wfc-mysql wfc-redis"
jar_dockers="wfc-auth wfc-gateway wfc-modules-system wfc-modules-user wfc-modules-job wfc-modules-payment"
@@ -38,7 +39,7 @@ case "$1" in
# 获取传入的IP地址
new_ip=$2
# 定义原始文件和临时文件
# env定义原始文件和临时文件
def_env_file=${docker_work_dir}/env/default.env
org_env_file=${docker_work_dir}/.env
tmp_env_file=${docker_work_dir}/temp.env
@@ -50,18 +51,27 @@ case "$1" in
if [ ! -z "${new_ip}" ]; then
# 使用sed命令替换IP地址
# 替换.env文件
sed "s/NACOS_SERVER_ADDR=.*/NACOS_SERVER_ADDR=${new_ip}:8848/" ${org_env_file} > $tmp_env_file
sed -i "s/GATEWAY_ADDR=.*/GATEWAY_ADDR=${new_ip}:8080/" $tmp_env_file
sed "s/WFC_SERVER_IP=.*/WFC_SERVER_IP=${new_ip}/" ${org_env_file} > $tmp_env_file
# sed -i "s/GATEWAY_ADDR=.*/GATEWAY_ADDR=${new_ip}:8080/" $tmp_env_file
mv $tmp_env_file $org_env_file
fi
# 定义原始文件和临时文件
org_nginx_conf=${docker_work_dir}/nginx/conf/nginx.conf
tmp_nginx_conf=${docker_work_dir}/nginx/conf/tmp_nginx.conf
# replace nginx.conf gateway server ip and port
while IFS= read -r line; do
if [[ ! $line =~ ^# && $line =~ .*=.* ]]; then
eval "export $line"
fi
done < $org_env_file
# nginx定义原始文件和临时文件
org_nginx_conf=${docker_work_dir}/nginx/conf/nginx.conf
tmp_nginx_conf=${docker_work_dir}/nginx/conf/tmp_nginx.conf
# 使用sed命令替换proxy_pass行中的IP地址
sed "s|proxy_pass http://.*/;|proxy_pass http://${GATEWAY_SERVER_IP}:${GATEWAY_SERVER_PORT}/;|" $org_nginx_conf > $tmp_nginx_conf
mv $tmp_nginx_conf $org_nginx_conf
# 使用sed命令替换proxy_pass行中的IP地址
sed "s|proxy_pass http://.*:8080/;|proxy_pass http://${new_ip}:8080/;|" $org_nginx_conf > $tmp_nginx_conf
mv $tmp_nginx_conf $org_nginx_conf
fi
;;
initdb)
# init database
@@ -85,6 +95,10 @@ case "$1" in
cd ${docker_work_dir}
docker-compose stop ${base_dockers}
docker-compose build ${base_dockers}
cd ${java_work_dir}
if [[ "$(docker images -q wfc-java:jre8 2> /dev/null)" == "" ]]; then
docker build -t wfc-java:jre8 -f dockerfile .
fi
;;
jar)
# build docker compose
@@ -150,23 +164,41 @@ case "$1" in
cd ${docker_work_dir}
docker-compose stop ${fe_docker}
docker rm ${fe_docker}
docker rmi nginx
# docker rmi nginx
;;
network)
cd ${docker_work_dir}
docker-compose stop
docker network rm wfc-fe-network
docker network rm wfc-be-network
;;
all)
$0 rm base
$0 rm jar
$0 rm fe
$0 rm network
;;
*)
echo "WANFi Controller Setup "
echo "Usage: $0 rm [base|jar|modules|fe|all]"
echo "WANFi Control and Billing Management System Setup ... "
echo "Usage: $0 rm [base|jar|modules|fe|network|all]"
exit 1
;;
esac
;;
prune)
cd ${docker_work_dir}
docker-compose down
docker system prune -a
;;
*)
echo "WANFi Control and Billing Management System Setup ... "
echo "Usage: $0 env|initdb|base|jar|modules|fe|all|rm [base|jar|modules|fe|all]"
echo "Usage: $0 env|initdb|base|jar|modules|fe|all|rm [base|jar|modules|fe|network|all]|prune"
echo " $0 env [IP]"
echo " $0 initdb"
echo " $0 base|jar|modules|fe"
echo " $0 all [IP]"
echo " $0 rm [base|jar|modules|fe|network|all]"
echo " $0 prune"
exit 1
;;
esac