2
0

feat: build enhancement

This commit is contained in:
simonzhangsz
2024-12-13 21:25:54 +08:00
parent 0417a1477e
commit 244f4e7b81
6 changed files with 174 additions and 31 deletions

View File

@@ -81,7 +81,7 @@ case "$1" in
"tar") "tar")
build-extras build-extras
build-jar build-jar
build-dist #build-dist
copy-file copy-file
build-tar build-tar
;; ;;

View File

@@ -18,32 +18,32 @@ Jars=" \
" "
case "$1" in case "$1" in
start) start)
cd ${DockerDir} cd ${DockerDir}
${DockerCompose} up -d ${DockerCompose} up -d
echo $! > ${PIDFile} echo $! > ${PIDFile}
;; ;;
stop) stop)
cd ${DockerDir} cd ${DockerDir}
${DockerCompose} down ${DockerCompose} down
rm ${PIDFile} rm ${PIDFile}
;; ;;
restart) restart)
$0 stop $0 stop
sleep 1 sleep 1
$0 start $0 start
;; ;;
status) status)
cd ${DockerDir} cd ${DockerDir}
${DockerCompose} ps ${DockerCompose} ps
;; ;;
version) version)
cd ${WFCBinDir} cd ${WFCBinDir}
java printJarVer ${Jars} java printJarVer ${Jars}
;; ;;
*) *)
echo "WANFi Controller Service" echo "WANFi Controller Service"
echo "Usage: $0 start|stop|restart|status|version" echo "Usage: $0 start|stop|restart|status|version"
exit 1 exit 1
;; ;;
esac esac

View File

@@ -5,19 +5,103 @@ DockerWorkDir=${WFCWorkDir}/docker
SrcServiceDir=${WFCWorkDir}/systemd/system SrcServiceDir=${WFCWorkDir}/systemd/system
DstServiceDir=/etc/systemd/system DstServiceDir=/etc/systemd/system
# prepare directory base_dockers="wfc-nacos wfc-mysql wfc-redis"
mkdir -p ${DockerWorkDir}/mysql/tmp jar_dockers="wfc-auth wfc-gateway wfc-modules-system wfc-modules-user wfc-modules-gen wfc-modules-job wfc-modules-file wfc-modules-payment"
chown -R root:root ${DockerWorkDir}/* modules_dockers="wfc-modules-system wfc-modules-user wfc-modules-gen wfc-modules-job wfc-modules-file wfc-modules-payment"
chown -R mysql:mysql ${DockerWorkDir}/mysql fe_docker=wfc-nginx
chmod -R 777 ${DockerWorkDir}/mysql/tmp
case "$1" in
env)
# prepare directory
mkdir -p ${DockerWorkDir}/mysql/tmp
chown -R root:root ${DockerWorkDir}/*
chown -R root:root ${DockerWorkDir}/.*
chown -R mysql:mysql ${DockerWorkDir}/mysql
chmod -R 775 ${DockerWorkDir}/nacos
chmod -R 775 ${DockerWorkDir}/nginx
chmod -R 775 ${DockerWorkDir}/redis
chmod -R 775 ${DockerWorkDir}/mysql
chmod 1777 ${DockerWorkDir}/mysql/tmp
# setup system serivce
cp -rf ${SrcServiceDir}/wfccontrol.service ${DstServiceDir}/
systemctl daemon-reload
systemctl enable wfccontrol.service
;;
base)
# build docker compose
cd ${DockerWorkDir}
docker-compose stop ${base_dockers}
docker-compose build ${base_dockers}
;;
jar)
# build docker compose
cd ${DockerWorkDir}
docker-compose stop ${jar_dockers}
docker-compose build ${jar_dockers}
;;
modules)
# build docker compose
cd ${DockerWorkDir}
docker-compose stop ${modules_dockers}
docker-compose build ${modules_dockers}
;;
fe)
# build docker compose
cd ${DockerWorkDir}
docker-compose stop ${fe_docker}
docker-compose build ${fe_docker}
;;
all)
$0 env
$0 base
$0 jar
$0 fe
;;
rm)
case "$2" in
base)
cd ${DockerWorkDir}
docker-compose stop ${base_dockers}
for base_docker in ${base_dockers}; do
docker rm ${base_docker}
done
;;
jar)
cd ${DockerWorkDir}
docker-compose stop ${jar_dockers}
for jar_docker in ${jar_dockers}; do
docker rm ${jar_docker}
docker rmi docker_${jar_docker}
done
;;
modules)
cd ${DockerWorkDir}
docker-compose stop ${modules_dockers}
for modules_docker in ${modules_dockers}; do
docker rm ${modules_docker}
docker rmi docker_${modules_docker}
done
;;
fe)
cd ${DockerWorkDir}
docker-compose stop ${fe_docker}
docker rm ${fe_docker}
docker rmi nginx
;;
*)
echo "WANFi Controller Setup "
echo "Usage: $0 rm [base|jar|modules|fe]"
exit 1
;;
esac
;;
*)
echo "WANFi Controller Setup "
echo "Usage: $0 all|env|base|jar|modules|fe|rm [base|jar|modules|fe]"
exit 1
;;
esac
# setup system serivce
cp -rf ${SrcServiceDir}/wfccontrol.service ${DstServiceDir}/
systemctl daemon-reload
systemctl enable wfccontrol.service
# build docker compose
cd ${DockerWorkDir}
docker-compose down
docker-compose build

7
build/docker/.env Normal file
View File

@@ -0,0 +1,7 @@
MYSQL_ROOT_PASSWORD=123456
MYSQL_DATABASE=wfc_system_db
MYSQL_USER=mysql
MYSQL_PASSWORD=
NACOS_SERVER_ADDR=192.168.13.128:8848
NACOS_NAME_SPACE=wfc-prod
GATEWAY_ADDR=192.168.13.128:8080

View File

@@ -6,7 +6,8 @@ services:
context: ./nacos context: ./nacos
environment: environment:
- MODE=standalone - MODE=standalone
- NACOS_SERVER_ADDR=192.168.13.128 - NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
volumes: volumes:
- ./nacos/logs/:/home/nacos/logs - ./nacos/logs/:/home/nacos/logs
- ./nacos/conf/application.properties:/home/nacos/conf/application.properties - ./nacos/conf/application.properties:/home/nacos/conf/application.properties
@@ -25,6 +26,7 @@ services:
ports: ports:
- "3306:3306" - "3306:3306"
volumes: volumes:
- ./mysql/db:/docker-entrypoint-initdb.d # 挂载 SQL 文件
- ./mysql/conf:/etc/mysql/conf.d - ./mysql/conf:/etc/mysql/conf.d
- ./mysql/logs:/logs - ./mysql/logs:/logs
- ./mysql/data:/var/lib/mysql - ./mysql/data:/var/lib/mysql
@@ -60,10 +62,15 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "8080:8080" - "8080:8080"
volumes:
- ./wfc/gateway/jar/wfc-gateway.jar:/home/wfc/wfc-gateway.jar
depends_on: depends_on:
- wfc-redis - wfc-redis
links: links:
- wfc-redis - wfc-redis
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-auth: wfc-auth:
container_name: wfc-auth container_name: wfc-auth
@@ -72,10 +79,15 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9200:9200" - "9200:9200"
volumes:
- ./wfc/auth/jar/wfc-auth.jar:/home/wfc/wfc-auth.jar
depends_on: depends_on:
- wfc-redis - wfc-redis
links: links:
- wfc-redis - wfc-redis
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-system: wfc-modules-system:
container_name: wfc-modules-system container_name: wfc-modules-system
@@ -84,12 +96,17 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9201:9201" - "9201:9201"
volumes:
- ./wfc/modules/system/jar/wfc-modules-system.jar:/home/wfc/wfc-modules-system.jar
depends_on: depends_on:
- wfc-redis - wfc-redis
- wfc-mysql - wfc-mysql
links: links:
- wfc-redis - wfc-redis
- wfc-mysql - wfc-mysql
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-user: wfc-modules-user:
container_name: wfc-modules-user container_name: wfc-modules-user
@@ -98,12 +115,17 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9204:9204" - "9204:9204"
volumes:
- ./wfc/modules/user/jar/wfc-modules-user.jar:/home/wfc/wfc-modules-user.jar
depends_on: depends_on:
- wfc-redis - wfc-redis
- wfc-mysql - wfc-mysql
links: links:
- wfc-redis - wfc-redis
- wfc-mysql - wfc-mysql
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-gen: wfc-modules-gen:
container_name: wfc-modules-gen container_name: wfc-modules-gen
@@ -112,10 +134,15 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9202:9202" - "9202:9202"
volumes:
- ./wfc/modules/gen/jar/wfc-modules-gen.jar:/home/wfc/wfc-modules-gen.jar
depends_on: depends_on:
- wfc-mysql - wfc-mysql
links: links:
- wfc-mysql - wfc-mysql
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-job: wfc-modules-job:
container_name: wfc-modules-job container_name: wfc-modules-job
@@ -124,10 +151,15 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9203:9203" - "9203:9203"
volumes:
- ./wfc/modules/job/jar/wfc-modules-job.jar:/home/wfc/wfc-modules-job.jar
depends_on: depends_on:
- wfc-mysql - wfc-mysql
links: links:
- wfc-mysql - wfc-mysql
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-file: wfc-modules-file:
container_name: wfc-modules-file container_name: wfc-modules-file
@@ -137,7 +169,11 @@ services:
ports: ports:
- "9300:9300" - "9300:9300"
volumes: volumes:
- ./wfc/upload:/home/wfc/upload - ./wfc/modules/file/jar/wfc-modules-file.jar:/home/wfc/wfc-modules-file.jar
- ./wfc/upload:/home/wfc/upload
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-modules-payment: wfc-modules-payment:
container_name: wfc-modules-payment container_name: wfc-modules-payment
@@ -146,10 +182,15 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9306:9306" - "9306:9306"
volumes:
- ./wfc/modules/payment/jar/wfc-modules-payment.jar:/home/wfc/wfc-modules-payment.jar
depends_on: depends_on:
- wfc-mysql - wfc-mysql
links: links:
- wfc-mysql - wfc-mysql
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-visual-monitor: wfc-visual-monitor:
container_name: wfc-visual-monitor container_name: wfc-visual-monitor
@@ -158,6 +199,11 @@ services:
dockerfile: dockerfile dockerfile: dockerfile
ports: ports:
- "9100:9100" - "9100:9100"
volumes:
- ./wfc/visual/monitor/jar/wfc-visual-monitor.jar:/home/wfc/wfc-visual-monitor.jar
environment:
- NACOS_SERVER_ADDR=${NACOS_SERVER_ADDR}
- NACOS_NAME_SPACE=${NACOS_NAME_SPACE}
#restart: always #restart: always
wfc-nginx: wfc-nginx:
container_name: wfc-nginx container_name: wfc-nginx
@@ -175,4 +221,6 @@ services:
- wfc-gateway - wfc-gateway
links: links:
- wfc-gateway - wfc-gateway
environment:
- GATEWAY_ADDR=${GATEWAY_ADDR}
#restart: always #restart: always

View File

@@ -4,4 +4,8 @@ FROM mysql:5.7
MAINTAINER wfc MAINTAINER wfc
# 执行sql脚本 # 执行sql脚本
ADD ./db/*.sql /docker-entrypoint-initdb.d/ ENV MYSQL_ROOT_PASSWORD=123456
COPY ./db/*.sql /docker-entrypoint-initdb.d/
# COPY ./db/initdb.sh /docker-entrypoint-initdb.d/
# RUN chmod 755 /docker-entrypoint-initdb.d/initdb.sh
# ENTRYPOINT ["bash", "/docker-entrypoint-initdb.d/initdb.sh"]