42 lines
1.7 KiB
Bash
Executable File
42 lines
1.7 KiB
Bash
Executable File
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}
|
|
|