This commit is contained in:
孙小云 2025-05-14 19:51:59 +08:00
parent f081543b18
commit 851330c484
4 changed files with 77 additions and 7 deletions

View File

@ -78,6 +78,14 @@ export SKYWALKING_USERNAME=skywalking
export SKYWALKING_PASSWORD=skywalking
# Consul 配置
export CONSUL_NAME="consul"
export CONSUL_IMAGE="consul:latest"
export CONSUL_PORT="8500"
export CONSUL_MEMORY="512m"
export SKY_AOP="sky-oap:11800"
#主机INGRESS_PORT 映射到容器80 INGRESS_SSL_PORT 映射到容器 443
export INGRESS_PORT=80
@ -90,7 +98,7 @@ export XXL_JOB=http://xxljob:8080/xxl-job-admin
export TZ=Asia/Shanghai
export SPRING_CLOUD_CONSUL_HOST=consul
export SPRING_CLOUD_CONSUL_PORT=8500

View File

@ -40,11 +40,8 @@ if docker ps -a | grep -q ${SKYWALKING_OAP_NAME}; then
docker rm ${SKYWALKING_OAP_NAME} >/dev/null 2>&1
fi
if docker ps -a | grep -q ${SKYWALKING_UI_NAME}; then
echo "停止并删除已存在的 SkyWalking UI 容器..."
docker stop ${SKYWALKING_UI_NAME} >/dev/null 2>&1
docker rm ${SKYWALKING_UI_NAME} >/dev/null 2>&1
fi
# 启动SkyWalking OAP容器
echo "启动 SkyWalking OAP..."

View File

@ -42,7 +42,6 @@ if docker ps -a | grep -q ${SKYWALKING_UI_NAME}; then
fi
echo "启动 SkyWalking UI..."
docker run -d \
--name ${SKYWALKING_UI_NAME} \

View File

@ -0,0 +1,66 @@
source ../environment.sh
if [ -z "$NETWORK" ]; then
echo "错误: 未找到 NETWORK 环境变量"
exit 1
fi
if [ -z "$CONSUL_NAME" ]; then
echo "错误: 未找到 CONSUL_NAME 环境变量"
exit 1
fi
if [ -z "$CONSUL_IMAGE" ]; then
echo "错误: 未找到 CONSUL_IMAGE 环境变量"
exit 1
fi
if [ -z "$CONSUL_PORT" ]; then
echo "错误: 未找到 CONSUL_PORT 环境变量"
exit 1
fi
if [ -z "$CONSUL_MEMORY" ]; then
echo "错误: 未找到 CONSUL_MEMORY 环境变量"
exit 1
fi
# 停止并删除已存在的容器
if docker ps -a | grep -q ${CONSUL_NAME}; then
echo "停止并删除已存在的 Consul 容器..."
docker stop ${CONSUL_NAME} >/dev/null 2>&1
docker rm ${CONSUL_NAME} >/dev/null 2>&1
fi
# 创建数据目录
CONSUL_DATA_DIR="/Users/sunpeng/tuoheng/data/consul"
mkdir -p ${CONSUL_DATA_DIR}
# 启动Consul容器
echo "启动 Consul..."
docker run -d \
--name ${CONSUL_NAME} \
--network $NETWORK \
--memory $CONSUL_MEMORY \
--restart unless-stopped \
-p ${CONSUL_PORT}:8500 \
--mount type=bind,source=/etc/localtime,target=/etc/localtime,readonly \
$CONSUL_IMAGE agent -dev -client=0.0.0.0 -ui
# 等待Consul启动
echo "等待 Consul 就绪..."
until docker exec ${CONSUL_NAME} consul members 2>/dev/null; do
echo "等待 Consul 启动..."
sleep 3
done
echo "Consul 部署完成!"
echo "UI 访问地址: http://localhost:${CONSUL_PORT}"
echo "Service $SERVICE_NAME . Creating..."
docker service create \
--name "$SERVICE_NAME" \
--env CONSUL_BIND_INTERFACE=eth0 \
--restart-condition any \
--network "$NETWORK" \
--publish published=8500,target=8500 \
--constraint 'node.role == manager' \
consul
docker service ls