From 5c6db759c8f1b951e2b2809269782ce2b5cc07b0 Mon Sep 17 00:00:00 2001 From: simonzhangsz <15231584+simonzhangsz@user.noreply.gitee.com> Date: Sat, 14 Dec 2024 13:35:46 +0800 Subject: [PATCH] feat: enhance build process --- build/bin/wfcsetup.sh | 75 +++++++++++++++------- build/docker/{.env => env/default.env} | 0 build/docker/nginx/conf/nginx.conf | 4 +- docs/03-configuration/03-wfc-quickstart.md | 16 ++--- 4 files changed, 62 insertions(+), 33 deletions(-) rename build/docker/{.env => env/default.env} (100%) diff --git a/build/bin/wfcsetup.sh b/build/bin/wfcsetup.sh index 1c435f1..b2b210e 100644 --- a/build/bin/wfcsetup.sh +++ b/build/bin/wfcsetup.sh @@ -1,9 +1,9 @@ #!/bin/bash -WFCWorkDir=/opt/wfc -DockerWorkDir=${WFCWorkDir}/docker -SrcServiceDir=${WFCWorkDir}/systemd/system -DstServiceDir=/etc/systemd/system +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 base_dockers="wfc-nacos wfc-mysql wfc-redis" jar_dockers="wfc-auth wfc-gateway wfc-modules-system wfc-modules-user wfc-modules-gen wfc-modules-job wfc-modules-file wfc-modules-payment" @@ -13,42 +13,71 @@ fe_docker=wfc-nginx 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 + mkdir -p ${docker_work_dir}/mysql/tmp + chown -R root:root ${docker_work_dir}/* + chown -R root:root ${docker_work_dir}/.* + chown -R mysql:mysql ${docker_work_dir}/mysql + chmod -R 775 ${docker_work_dir}/nacos + chmod -R 775 ${docker_work_dir}/nginx + chmod -R 775 ${docker_work_dir}/redis + chmod -R 775 ${docker_work_dir}/mysql + chmod 1777 ${docker_work_dir}/mysql/tmp # setup system serivce - cp -rf ${SrcServiceDir}/wfccontrol.service ${DstServiceDir}/ + cp -rf ${src_service_dir}/wfccontrol.service ${dst_service_dir}/ systemctl daemon-reload - systemctl enable wfccontrol.service + systemctl enable wfccontrol.service + + # 获取传入的IP地址 + new_ip=$2 + + # 定义原始文件和临时文件 + def_env_file=${docker_work_dir}/env/default.env + org_env_file=${docker_work_dir}/.env + tmp_env_file=${docker_work_dir}/temp.env + + if [ -f ${org_env_file} ]; then + cp ${def_env_file} ${org_env_file} + fi + + if [ ${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 + + mv $tmp_env_file $org_env_file + + # 定义原始文件和临时文件 + 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://.*:8080/;|proxy_pass http://${new_ip}:8080/;|" $org_nginx_conf > $tmp_nginx_conf + mv $tmp_nginx_conf $org_nginx_conf + fi ;; base) # build docker compose - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${base_dockers} docker-compose build ${base_dockers} ;; jar) # build docker compose - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${jar_dockers} docker-compose build ${jar_dockers} ;; modules) # build docker compose - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${modules_dockers} docker-compose build ${modules_dockers} ;; fe) # build docker compose - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${fe_docker} docker-compose build ${fe_docker} ;; @@ -61,14 +90,14 @@ case "$1" in rm) case "$2" in base) - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${base_dockers} for base_docker in ${base_dockers}; do docker rm ${base_docker} done ;; jar) - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${jar_dockers} for jar_docker in ${jar_dockers}; do docker rm ${jar_docker} @@ -76,7 +105,7 @@ case "$1" in done ;; modules) - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${modules_dockers} for modules_docker in ${modules_dockers}; do docker rm ${modules_docker} @@ -84,7 +113,7 @@ case "$1" in done ;; fe) - cd ${DockerWorkDir} + cd ${docker_work_dir} docker-compose stop ${fe_docker} docker rm ${fe_docker} docker rmi nginx diff --git a/build/docker/.env b/build/docker/env/default.env similarity index 100% rename from build/docker/.env rename to build/docker/env/default.env diff --git a/build/docker/nginx/conf/nginx.conf b/build/docker/nginx/conf/nginx.conf index 3d58ce0..bf2844b 100644 --- a/build/docker/nginx/conf/nginx.conf +++ b/build/docker/nginx/conf/nginx.conf @@ -25,7 +25,7 @@ http { proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_pass http://wfc-gateway:8080/; + proxy_pass http://192.168.13.128:8080/; } location /u { @@ -39,7 +39,7 @@ http { proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_pass http://wfc-gateway:8080/; + proxy_pass http://192.168.13.128:8080/; } # 避免actuator暴露 diff --git a/docs/03-configuration/03-wfc-quickstart.md b/docs/03-configuration/03-wfc-quickstart.md index e5368ea..4f61ff5 100644 --- a/docs/03-configuration/03-wfc-quickstart.md +++ b/docs/03-configuration/03-wfc-quickstart.md @@ -31,9 +31,16 @@ Docker-compose >= 1.29.2 sudo tar xvfz wfc-1.0.2-20241212.tar.gz -C /opt/wfc ``` +* 配置软件 + +```sh + cd /opt/wfc/bin + sudo ./wfcsetup.sh all 192.168.13.128 #宿主机IP地址 +``` + * 修改docker环境参数 -修改如下NACOS_SERVER_ADD的IP地址为实际宿主机的IP地址: +根据实际环境修改如下环境参数配置: ```sh cat .env @@ -47,13 +54,6 @@ cat .env NACOS_SERVER_ADDR=192.168.13.128:8848 ``` -* 配置软件 - -```sh - cd /opt/wfc/bin - sudo ./wfcsetup.sh all -``` - * 启动/查看/停止/版本软件 ```sh