[Java实战] Docker 快速启动 Sentinel 控制台(二十八)

[Java实战] Docker 快速启动 Sentinel 控制台(二十八)

一、通过 Docker 启动 Sentinel 控制台

1. 拉取官方镜像
bash 复制代码
docker pull docker.1ms.run/bladex/sentinel-dashboard:1.8.6
2. 运行容器
bash 复制代码
docker run -d \
  --name sentinel-dashboard \
  -p 8858:8858 \  # 控制台默认端口为 8080,此处映射为 8858(避免冲突)
  -e AUTH_USERNAME=sentinel \  # 可选:自定义登录用户名
  -e AUTH_PASSWORD=sentinel123 \  # 可选:自定义登录密码
  docker.1ms.run/bladex/sentinel-dashboard:1.8.6
3. 验证运行状态
bash 复制代码
docker ps | grep sentinel-dashboard

二、访问控制台

  1. 浏览器打开:

    复制代码
    http://<宿主机IP>:8858
    • 默认账号密码sentinel/sentinel
      (若未设置 AUTH_USERNAMEAUTH_PASSWORD 环境变量)
  2. 登录后界面:

三、Spring Boot 应用连接配置

application.yml 中添加:

yaml 复制代码
spring:
  cloud:
    sentinel:
      transport:
        dashboard: 宿主机IP:8858  # 例如 192.168.1.100:8858
        port: 8719  # 本地启动的Sentinel客户端端口(默认值)

四、常见问题排查

1. 控制台无数据
  • 检查项
    • 确保应用已成功注册到控制台(查看应用日志)
    • 确认网络连通性(防火墙是否放行 8858 和 8719 端口)
    • 检查 Spring Boot 依赖是否包含 spring-cloud-starter-alibaba-sentinel
2. 无法登录控制台
  • 若自定义了用户名密码,确认环境变量拼写正确
  • 清除浏览器缓存后重试
3. 规则不生效
  • 检查控制台规则配置是否保存成功
  • 确认资源名称与代码中 @SentinelResource 注解的 value 一致

五、持久化配置(可选)

默认规则存储在内存中,重启会丢失。可通过以下方式持久化:

1. 使用 Nacos 存储规则
bash 复制代码
docker run -d \
  --name sentinel-dashboard \
  -p 8858:8858 \
  -e NACOS_SERVER=your-nacos-ip:8848 \  # Nacos服务器地址
  -e NACOS_NAMESPACE=public \          # 命名空间
 docker.1ms.run/bladex/sentinel-dashboard:1.8.6
2. 自定义配置文件挂载
bash 复制代码
docker run -d \
  -v /your/config/path:/app/sentinel/config \
 docker.1ms.run/bladex/sentinel-dashboard:1.8.6

六、命令速查表

操作 命令
启动容器 docker run ...(见上文)
停止容器 docker stop sentinel-dashboard
查看日志 docker logs -f sentinel-dashboard
删除容器 docker rm -f sentinel-dashboard

通过 Docker 部署 Sentinel 控制台可快速搭建监控环境,建议生产环境中配合持久化方案使用。

希望本教程对您有帮助,请点赞❤️收藏⭐关注支持!欢迎在评论区留言交流技术细节!

相关推荐
Python私教4 小时前
如意Agent日志系统重构:从 print() 大海捞针到结构化可观测性栈
java·前端·重构
jieyucx4 小时前
Go 零基础数据结构:顺序表(像「排抽屉」一样学增删改查)
java·数据结构·golang
曦夜日长4 小时前
C++ STL容器string(一):string的变量细节、默认函数的认识以及常用接口的使用
java·开发语言·c++
北山有鸟4 小时前
IS_ERR 判断出错后,再用 PTR_ERR 把它强制转换回 int 型的错误码作为函数的返回值。
java·开发语言
phltxy4 小时前
深度解析:Spring Cloud Gateway 从入门到实战
java·开发语言
HAPPY酷4 小时前
从Public到Private:UE5 C++类创建路径差异全解析
java·c++·ue5
许彰午4 小时前
CacheSQL(一):手写数据库的工程化重生
java·数据库·缓存
shjita4 小时前
记录java执行中的一个错误细节
java·开发语言
空中海4 小时前
Docker入门到精通
java·docker·eureka
itzixiao5 小时前
L1-067 洛希极限(10分)[java][python]
java·开发语言·算法