一、docker-compose搭建eureka-server脚本
yaml
version: '3'
services:
eureka-server:
image: steeltoeoss/eureka-server:4.1.0
container_name: eureka-server
ports:
- "8761:8761"
environment:
# 关闭自注册和注册表拉取
- EUREKA_CLIENT_REGISTER_WITH_EUREKA=false
- EUREKA_CLIENT_FETCH_REGISTRY=false
# 优化服务端配置
- EUREKA_SERVER_ENABLE_SELF_PRESERVATION=false
- EUREKA_SERVER_USE_READ_ONLY_RESPONSE_CACHE=false
- EUREKA_SERVER_EVICTION_INTERVAL_TIMER_IN_MS=10000 # 清理间隔设为10秒
- EUREKA_SERVER_RESPONSE_CACHE_AUTO_EXPIRE_IN_SECONDS=60 # 响应缓存有效期
- EUREKA_SERVER_ENABLE_REPLICATE_REQUEST_COMPRESSION=true # 启用请求压缩
二、docker-compose搭建zipkin脚本
yaml
version: '3'
services:
zipkin:
image: openzipkin/zipkin:latest # 官方最新镜像
container_name: zipkin-server
ports:
- "9411:9411" # Zipkin UI 端口
environment:
- JAVA_OPTS=-Xms512m -Xmx512m # 限制内存使用
- STORAGE_TYPE=mem # 内存存储(开发测试适用)
- ZIPKIN_LOGGING_LEVEL=INFO # 日志级别
- SAMPLER_RATE=1.0 # 100%采样率(开发调试用)
healthcheck: # 健康检查
test: ["CMD", "curl", "-f", "http://localhost:9411/health"]
interval: 10s
timeout: 5s
retries: 3