diff --git a/start/hhzadmin.sh b/start/hhzadmin.sh index ba94904..82fb2df 100755 --- a/start/hhzadmin.sh +++ b/start/hhzadmin.sh @@ -1,5 +1,12 @@ source ../environment.sh + # 获取 NGINX 容器的 IP 地址 +NGINX_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ${NGINX_NAME}) +if [ -z "$NGINX_IP" ]; then + echo "错误:无法获取 ${NGINX_NAME} 容器的 IP 地址" + exit 1 +fi +echo "获取到 ${NGINX_NAME} 容器的 IP 地址: ${NGINX_IP}" if docker ps -a | grep -q ${HHZ_ADMIN_NAME}; then echo "停止并删除已存在的 HHZ_ADMIN_NAME 容器..." @@ -37,11 +44,13 @@ docker run --pull always -d \ --env MINIO_OSS_ACCESSKEYSECRET=${MINIO_SECRET_KEY} \ --env TUOHENG_DSP_CALLBACK_URL=https://${HHZ_DOMAIN_FULL}/hhz/admin/dsp/{requestId}/callback \ --env TZ=Asia/Shanghai \ +--add-host ${OIDC_ADMIN_DOMAIN}:${NGINX_IP} \ --mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ --memory ${HHZ_ADMIN_MEMORY} \ --restart unless-stopped \ ${HHZ_ADMIN_IMAGE} +# 下面这句话 # --env TUOHENG_DSP_DOMAIN_URL=http://${DSP_API_NAME}:9015/ \ \ No newline at end of file diff --git a/start_bazhong/dspapi.sh b/start_bazhong/dspapi.sh deleted file mode 100755 index 04c8700..0000000 --- a/start_bazhong/dspapi.sh +++ /dev/null @@ -1,44 +0,0 @@ -source ../environment.sh - - -if docker ps -a | grep -q ${DSP_API_NAME}; then - echo "停止并删除已存在的 DSP_API_NAME 容器..." - docker stop ${DSP_API_NAME} >/dev/null 2>&1 - docker rm ${DSP_API_NAME} >/dev/null 2>&1 -fi - - -docker run --pull always -d \ ---name ${DSP_API_NAME} \ ---network ${NETWORK} \ ---env SPRING_CLOUD_CONSUL_HOST=${CONSUL_NAME} \ ---env SPRING_CLOUD_CONSUL_PORT=8500 \ ---env SPRING_CLOUD_CONSUL_DISCOVERY_HOSTNAME=${DSP_API_NAME} \ ---env XXL_JOB_ADMIN_ADDRESSES=http://${XXLJOB_NAME}:8080/xxl-job-admin \ ---env XXL_ENABLE=false \ ---env SPRING_REDIS_HOST=${REDIS_NAME} \ ---env SPRING_REDIS_PORT=6379 \ ---env SPRING_DATASOURCE_DRUID_URL="jdbc:mysql://${MYSQL_NAME}:3306/tuoheng_dsp?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=true&tinyInt1isBit=false" \ ---env SPRING_DATASOURCE_DRUID_USERNAME=root \ ---env SPRING_DATASOURCE_DRUID_PASSWORD=${MYSQL_ROOT_PASSWORD} \ ---env SPRING_MQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env VIDEOSERVER_REQUESTURL=http://${STREAM_NAME}:8080 \ ---env VIDEOSERVER_VIDEOPLAYURL=https://${SRS_DOMAIN}:${NGINX_HTTPS_PORT}/recording/ \ ---env SPRING_KAFKA_BOOTSTRAP_SERVERS=${KAFKA_NAME}:9092 \ ---env MINIO_OSS_ENDPOINT=http://${MINIO_NAME}:9000 \ ---env MINIO_OSS_OUTENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_DAJIOSS_ENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_OSS_ACCESSKEYID=${MINIO_ACCESS_KEY} \ ---env MINIO_OSS_ACCESSKEYSECRET=${MINIO_SECRET_KEY} \ ---env TUOHENG_PUSH_URL=rtmp://${SRS_DOMAIN}:${SRS_RTMP_PORT}/live/ \ ---env TUOHENG_PULL_URL=https://${SRS_DOMAIN}:${NGINX_HTTPS_PORT}/live/ \ ---env TZ=Asia/Shanghai \ ---mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ ---memory ${DSP_API_MEMORY} \ ---restart unless-stopped \ -${DSP_API_IMAGE} \ No newline at end of file diff --git a/start_bazhong/gateway/replace_vars.sh b/start_bazhong/gateway/replace_vars.sh deleted file mode 100755 index 54a9f87..0000000 --- a/start_bazhong/gateway/replace_vars.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash - -# 确保在脚本所在目录执行 -cd "$(dirname "$0")" -SCRIPT_DIR="$(pwd)" -echo "当前工作目录: $SCRIPT_DIR" - -# 获取项目根目录 -ROOT_DIR="$(cd ../.. && pwd)" -echo "项目根目录: $ROOT_DIR" - -# 加载环境变量 -source "$ROOT_DIR/environment.sh" - -echo "开始替换Gateway配置文件中的环境变量..." - -# 定义源配置文件和目标目录 -SOURCE_FILE="$SCRIPT_DIR/application.yml" -TEMP_DIR="$SCRIPT_DIR/temp" -TARGET_FILE="$TEMP_DIR/application.yml" - -# 检查源配置文件是否存在 -if [ ! -f "$SOURCE_FILE" ]; then - echo "错误: 配置文件 $SOURCE_FILE 不存在!" - exit 1 -fi - -# 创建临时目录 -rm -rf "$TEMP_DIR" -mkdir -p "$TEMP_DIR" - -echo "处理文件: application.yml" - -# 读取原始文件内容 -content=$(cat "$SOURCE_FILE") - -# 获取environment.sh中所有环境变量 -env_vars=$(grep -E "^export [A-Z_]+" "$ROOT_DIR/environment.sh" | sed 's/export //') - -# 逐个替换环境变量 -for var in $env_vars; do - var_name=$(echo $var | cut -d= -f1) - var_value=${!var_name} - if [ ! -z "$var_value" ]; then - # 使用简单的变量替换方法 - pattern="\\\${$var_name}" - echo " 替换变量: ${pattern} -> $var_value" - content=$(echo "$content" | sed "s|${pattern}|$var_value|g") - fi -done - -# 写入处理后的内容到目标文件 -echo "$content" > "$TARGET_FILE" - -echo "环境变量替换完成! 替换后的文件位于 $TARGET_FILE" -echo "此文件将在启动Gateway容器时使用" diff --git a/start_bazhong/gateway/startGateway.sh b/start_bazhong/gateway/startGateway.sh deleted file mode 100755 index cf4e90d..0000000 --- a/start_bazhong/gateway/startGateway.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash - -# 确保在脚本所在目录执行 -cd "$(dirname "$0")" -SCRIPT_DIR="$(pwd)" -echo "当前工作目录: $SCRIPT_DIR" - -# 获取项目根目录 -ROOT_DIR="$(cd ../.. && pwd)" -echo "项目根目录: $ROOT_DIR" - -# 加载环境变量 -source "$ROOT_DIR/environment.sh" -echo "已加载环境变量" - -# 执行变量替换脚本 -echo "开始替换环境变量..." -bash "$SCRIPT_DIR/replace_vars.sh" - -# 检查替换是否成功 -if [ ! -f "$SCRIPT_DIR/temp/application.yml" ]; then - echo "错误: 替换后的配置文件不存在: $SCRIPT_DIR/temp/application.yml" - exit 1 -fi - -echo "配置文件替换成功,准备启动Gateway容器..." - -# 先停止和删除现有容器 -if docker ps -a | grep -q ${GATEWAY_NAME}; then - echo "停止并删除已存在的 ${GATEWAY_NAME} 容器..." - docker stop ${GATEWAY_NAME} >/dev/null 2>&1 - docker rm ${GATEWAY_NAME} >/dev/null 2>&1 -fi - -# 启动Gateway容器 -echo "正在启动 ${GATEWAY_NAME} 容器..." -docker run --pull always -d \ - --name ${GATEWAY_NAME} \ - --network ${NETWORK} \ - --add-host ${OIDC_SERVER_DOMAIN}:host-gateway \ - --env TZ=Asia/Shanghai \ - --env SPRING_CONFIG_LOCATION=file:/data/java/tuoheng/application.yml \ - --mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ - --mount type=bind,source="$SCRIPT_DIR/temp/application.yml",target=/data/java/tuoheng/application.yml,readonly \ - --memory ${GATEWAY_MEMORY} \ - --restart unless-stopped \ - ${GATEWAY_IMAGE} - -# 检查启动结果 -if [ $? -eq 0 ]; then - echo "Gateway服务已成功启动" - docker ps | grep ${GATEWAY_NAME} -else - echo "Gateway服务启动失败,请检查日志" - docker logs ${GATEWAY_NAME} -fi \ No newline at end of file diff --git a/start_bazhong/hhzadmin.sh b/start_bazhong/hhzadmin.sh deleted file mode 100755 index 1693e94..0000000 --- a/start_bazhong/hhzadmin.sh +++ /dev/null @@ -1,50 +0,0 @@ -source ../environment.sh - - -if docker ps -a | grep -q ${HHZ_ADMIN_NAME}; then - echo "停止并删除已存在的 HHZ_ADMIN_NAME 容器..." - docker stop ${HHZ_ADMIN_NAME} >/dev/null 2>&1 - docker rm ${HHZ_ADMIN_NAME} >/dev/null 2>&1 -fi - - -docker run --pull always -d \ ---name ${HHZ_ADMIN_NAME} \ ---network ${NETWORK} \ ---env SPRING_CLOUD_CONSUL_HOST=${CONSUL_NAME} \ ---env SPRING_CLOUD_CONSUL_PORT=8500 \ ---env SPRING_CLOUD_CONSUL_DISCOVERY_HOSTNAME=${HHZ_ADMIN_NAME} \ ---env XXL_JOB_ADMIN_ADDRESSES=http://${XXLJOB_NAME}:8080/xxl-job-admin \ ---env XXL_ENABLE=false \ ---env SPRING_REDIS_HOST=${REDIS_NAME} \ ---env SPRING_REDIS_PORT=6379 \ ---env SPRING_DATASOURCE_URL="jdbc:mysql://${MYSQL_NAME}:3306/tuoheng_hhz?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=true&tinyInt1isBit=false" \ ---env SPRING_DATASOURCE_USERNAME=root \ ---env SPRING_DATASOURCE_PASSWORD=${MYSQL_ROOT_PASSWORD} \ ---env SPRING_MQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env VIDEOSERVER_REQUESTURL=http://${STREAM_NAME}:8080 \ ---env VIDEOSERVER_VIDEOPLAYURL=https://${SRS_DOMAIN}:${NGINX_HTTPS_PORT}/recording/ \ ---env SPRING_KAFKA_BOOTSTRAP_SERVERS=${KAFKA_NAME}:9092 \ ---env MINIO_OSS_ENDPOINT=http://${MINIO_NAME}:9000 \ ---env MINIO_OSS_OUTENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_DAJIOSS_ENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_OSS_ACCESSKEYID=${MINIO_ACCESS_KEY} \ ---env MINIO_OSS_ACCESSKEYSECRET=${MINIO_SECRET_KEY} \ ---env TUOHENG_OIDC-URL=https://${OIDC_ADMIN_DOMAIN_FULL} \ ---env TUOHENG_DSP_CALLBACK_URL=https://${HHZ_DOMAIN_FULL}/hhz/admin/dsp/{requestId}/callback \ ---env TUOHENG_DSP_DOMAIN_URL=http://${DSP_API_NAME}:9015/ \ ---env TZ=Asia/Shanghai \ ---mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ ---memory ${HHZ_ADMIN_MEMORY} \ ---restart unless-stopped \ -${HHZ_ADMIN_IMAGE} - -# 下面这句话 -# --env TUOHENG_DSP_DOMAIN_URL=http://${DSP_API_NAME}:9015/ \ - - \ No newline at end of file diff --git a/start_bazhong/hhzapi.sh b/start_bazhong/hhzapi.sh deleted file mode 100755 index 8fc159b..0000000 --- a/start_bazhong/hhzapi.sh +++ /dev/null @@ -1,44 +0,0 @@ -source ../environment.sh - - -if docker ps -a | grep -q ${HHZ_API_NAME}; then - echo "停止并删除已存在的 HHZ_API_NAME 容器..." - docker stop ${HHZ_API_NAME} >/dev/null 2>&1 - docker rm ${HHZ_API_NAME} >/dev/null 2>&1 -fi - - -docker run --pull always -d \ ---name ${HHZ_API_NAME} \ ---network ${NETWORK} \ ---env SPRING_CLOUD_CONSUL_HOST=${CONSUL_NAME} \ ---env SPRING_CLOUD_CONSUL_PORT=8500 \ ---env SPRING_CLOUD_CONSUL_DISCOVERY_HOSTNAME=${HHZ_API_NAME} \ ---env XXL_JOB_ADMIN_ADDRESSES=http://${XXLJOB_NAME}:8080/xxl-job-admin \ ---env XXL_ENABLE=false \ ---env SPRING_REDIS_HOST=${REDIS_NAME} \ ---env SPRING_REDIS_PORT=6379 \ ---env SPRING_DATASOURCE_URL="jdbc:mysql://${MYSQL_NAME}:3306/tuoheng_hhz?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=true&tinyInt1isBit=false" \ ---env SPRING_DATASOURCE_USERNAME=root \ ---env SPRING_DATASOURCE_PASSWORD=${MYSQL_ROOT_PASSWORD} \ ---env SPRING_MQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_MQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_ONLINEURL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_URL=tcp://${MQTT_NAME}:1883 \ ---env SPRING_NEWMQTT_NEWURL=tcp://${MQTT_NAME}:1883 \ ---env VIDEOSERVER_REQUESTURL=http://${STREAM_NAME}:8080 \ ---env VIDEOSERVER_VIDEOPLAYURL=https://${SRS_DOMAIN}:${NGINX_HTTPS_PORT}/recording/ \ ---env SPRING_KAFKA_BOOTSTRAP_SERVERS=${KAFKA_NAME}:9092 \ ---env MINIO_OSS_ENDPOINT=http://${MINIO_NAME}:9000 \ ---env MINIO_OSS_OUTENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_DAJIOSS_ENDPOINT=https://${MINIO_DOMAIN}:${NGINX_HTTPS_PORT} \ ---env MINIO_OSS_ACCESSKEYID=${MINIO_ACCESS_KEY} \ ---env MINIO_OSS_ACCESSKEYSECRET=${MINIO_SECRET_KEY} \ ---env TUOHENG_DSP_DOMAIN_URL=http://${DSP_API_NAME}:9015/ \ ---env TUOHENG_DSP_CALLBACK_URL=http://${HHZ_API_NAME}:9055/api/dsp/{requestId}/callback \ ---env TZ=Asia/Shanghai \ ---mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ ---memory ${HHZ_API_MEMORY} \ ---restart unless-stopped \ -${HHZ_API_IMAGE} \ No newline at end of file diff --git a/start_bazhong/nginx.sh b/start_bazhong/nginx.sh deleted file mode 100755 index 73c39c0..0000000 --- a/start_bazhong/nginx.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash -source ../environment.sh - -# 检查并停止/删除已存在的容器 -if docker ps -a | grep -q ${NGINX_NAME}; then - echo "停止并删除已存在的 ${NGINX_NAME} 容器..." - docker stop ${NGINX_NAME} >/dev/null 2>&1 - docker rm ${NGINX_NAME} >/dev/null 2>&1 -fi - -# 准备 docker run 命令 -DOCKER_RUN_CMD="docker run --pull always -d \ ---name ${NGINX_NAME} \ ---network ${NETWORK} \ --p ${NGINX_HTTP_PORT}:80 \ --p ${NGINX_HTTPS_PORT}:443 \ ---env TZ=Asia/Shanghai \ ---memory ${NGINX_MEMORY} \ ---volume ${STREAM_DATA}:/data/recording \ ---volume ${SRS_DATA}:/data/srs \ ---restart unless-stopped" - -# 如果配置了证书,添加证书挂载 -if [ ! -z "${PEM_PATH}" ] && [ ! -z "${KEY_PATH}" ]; then - echo "检测到证书配置,将挂载证书文件..." - if [ ! -f "${PEM_PATH}" ] || [ ! -f "${KEY_PATH}" ]; then - echo "错误:证书文件不存在!" - exit 1 - fi - DOCKER_RUN_CMD="${DOCKER_RUN_CMD} \ ---volume ${PEM_PATH}:/etc/nginx/t-aaron.com.pem \ ---volume ${KEY_PATH}:/etc/nginx/t-aaron.com.key" -fi - -# 添加镜像名称并运行容器 -DOCKER_RUN_CMD="${DOCKER_RUN_CMD} ${NGINX_IMAGE}" - -# 执行 docker run 命令 -echo "启动 Nginx 容器..." -eval ${DOCKER_RUN_CMD} - -# 检查容器是否成功启动 -if [ $? -eq 0 ]; then - echo "Nginx 容器启动成功!" - docker ps | grep ${NGINX_NAME} -else - echo "错误:Nginx 容器启动失败!" - exit 1 -fi - - \ No newline at end of file diff --git a/start_bazhong/oidcservice.sh b/start_bazhong/oidcservice.sh deleted file mode 100755 index d37f1dd..0000000 --- a/start_bazhong/oidcservice.sh +++ /dev/null @@ -1,41 +0,0 @@ -source ../environment.sh - -# 获取 NGINX 容器的 IP 地址 -NGINX_IP=$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' ${NGINX_NAME}) -if [ -z "$NGINX_IP" ]; then - echo "错误:无法获取 ${NGINX_NAME} 容器的 IP 地址" - exit 1 -fi -echo "获取到 ${NGINX_NAME} 容器的 IP 地址: ${NGINX_IP}" - -if docker ps -a | grep -q ${OIDC_SERVER_NAME}; then - echo "停止并删除已存在的 OIDC_SERVER_NAME 容器..." - docker stop ${OIDC_SERVER_NAME} >/dev/null 2>&1 - docker rm ${OIDC_SERVER_NAME} >/dev/null 2>&1 -fi - - -docker run --pull always -d \ ---name ${OIDC_SERVER_NAME} \ ---network ${NETWORK} \ ---env SPRING_CLOUD_CONSUL_HOST=${CONSUL_NAME} \ ---env SPRING_CLOUD_CONSUL_PORT=8500 \ ---env SPRING_CLOUD_CONSUL_DISCOVERY_HOSTNAME=${OIDC_SERVER_NAME} \ ---env XXL_JOB_ADMIN_ADDRESSES=http://${XXLJOB_NAME}:8080/xxl-job-admin \ ---env XXL_ENABLE=false \ ---env SPRING_REDIS_HOST=${REDIS_NAME} \ ---env SPRING_REDIS_PORT=6379 \ ---env SPRING_DATASOURCE_URL="jdbc:mysql://${MYSQL_NAME}:3306/tuoheng_oidc?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2b8&useSSL=true&tinyInt1isBit=false" \ ---env SPRING_DATASOURCE_USERNAME=root \ ---env SPRING_DATASOURCE_PASSWORD=${MYSQL_ROOT_PASSWORD} \ ---env THIRD_TOKEN_ISSUER=http://${OIDC_SERVER_NAME}:8090 \ ---env OAUTH2_TOKEN_ISSUER=https://${OIDC_DOMAIN_FULL} \ ---env SPRING_SECURITY_OAUTH2_RESOURCE-SERVER_JWT_ISSUER-URI=https://${OIDC_DOMAIN_FULL} \ ---env TZ=Asia/Shanghai \ ---env SPRING_KAFKA_BOOTSTRAP_SERVERS=${KAFKA_NAME}:9092 \ ---add-host ${OIDC_SERVER_DOMAIN}:${NGINX_IP} \ ---mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \ ---memory ${OIDC_SERVER_MEMORY} \ ---restart unless-stopped \ -${OIDC_SERVER_IMAGE} -