本地部署开源分布式追踪后端系统 Tempo 并实现外部访问

发布时间:2026/10/4 8:37:09

本地部署开源分布式追踪后端系统 Tempo 并实现外部访问 Tempo 是一款开源的分布式追踪后端系统它是一个现代化、高性能、可扩展的解决方案由 Grafana Labs 开发并维护专门用于存储和查询大规模的分布式追踪数据。本文将详细介绍如何利用 Docker 在局域网内部署 Tempo 并结合路由侠实现外网访问局域网内部署的 Tempo 。第一步本地部署安装 Tempo1本教程操作环境为 Linux Ubuntu 系统Tempo 依赖 Docker 运行我们需要先确保你的系统上已经安装了 Docker 。如果尚未安装可以参考文档进行安装点此查看。2安装 Docker Compose 。sudo curl -L https://github.com/docker/compose/releases/download/$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -Po tag_name: \K.*\d) /usr/local/bin/docker-compose3创建并进入项目目录设置正确权限。mkdir tempo-test cd tempo-testsudo mkdir -p /tmp/tempo-data/blocks sudo mkdir -p /tmp/tempo-data/wal sudo chmod -R 777 /tmp/tempo-data4创建 tempo.yaml 文件。sudo vim tempo.yaml写入以下内容server: http_listen_port: 3200 distributor: receivers: otlp: protocols: grpc: http: ingester: max_block_duration: 5m compactor: compaction: block_retention: 1h storage: trace: backend: local local: path: /tmp/tempo/blocks wal: path: /tmp/tempo/wal5在项目目录下输入以下命令运行 Tempo 容器。docker run -d \ --name tempo \ -p 3200:3200 \ -v $(pwd)/tempo.yaml:/etc/tempo.yaml \ -v /tmp/tempo-data:/tmp/tempo \ grafana/tempo:latest \ -config.file/etc/tempo.yaml6在终端输入以下命令检查健康状态接口如果返回类似 status:ready 或 status:success 说明 Tempo 正常运行。curl http://localhost:3200/status第二步外网访问本地 Tempo安装路由侠内网穿透。1当前未提供网页管理需要先在任意一台 Windows 机器安装路由侠 Windows 版本用作跨机器管理。点此下载2在路由侠客户端主界面进入“ 设备管理 ”点击右下角的“ 添加设备 ”此时可查看到对应的安装码此安装码用于将设备添加到对应账号下可选中后复制。3直接下载后导入wget https://dl.luyouxia.com:8443/v2/lyx-docker-x86_64.tar docker load -i lyx-docker-x86_64.tar4然后使用该镜像启动容器。docker run --name lyx -it --restartalways --nethost -e code这里填写安装码luyouxia/lyx5此时需要等待下载和安装的过程如果一切正常最终可以看到一些输出并且可以看到如下提示[Device] Logged in. Token: ....这就表示安装成功了。当前 Linux 终端这边如果是使用的上面的命令Docker 是运行在前台此时可以按住 Ctrl C 退出路由侠容器也将退出。现在可以使用以下命令将其放入后台持续运行docker start lyx注意如果容器删除重新 docker run 将创建为新的设备。需要注意的是因为容器参数已经添加了 --restartalways 这样开机就会自动启动不需要再手动启动路由侠了。6现在回到 Windows 这边设备列表点击右上角的 × 返回主界面再次进入就可以找到这个设备可以修改名称。7回到主界面点击【内网映射】。8注意右上角的设备名称下拉框这里选中刚刚添加的设备名称此时在这个界面上添加的映射就属于刚刚这个设备。添加或修改一般需要等待 30 秒容器中的路由侠进程就会更新并加载。切换好设备后点击【添加映射】。9选择【原生端口】。10在内网地址填写你的服务器 IP 和 Tempo 端口 3200 后点击【创建】按钮如下图。11创建好后就可以看到一条映射的公网地址鼠标右键点击【复制地址】。12在外网电脑上打开终端输入以下命令测试成功就能通过 API 接口接收和查询追踪数据了。curl http://你的路由侠域名/ready
延伸阅读

更多相关文章

2026/10/3 23:19:03

WiFi热图绘制终极指南:3分钟学会免费网络优化神器

WiFi热图绘制终极指南:3分钟学会免费网络优化神器 【免费下载链接】wifi-heat-mapper whm also known as wifi-heat-mapper is a Python library for benchmarking Wi-Fi networks and gather useful metrics that can be converted into meaningful easy-to-unders…

2026/10/5 0:12:09

计算机网络实验报告:网络命令、路由交换与IIS配置全解析

简介:河北工业大学计算机网络实验报告以Word文档形式整理,聚焦网络基础技能实操,面向高校计算机网络课程学习者与需要备考CCNA等认证的读者。内容覆盖实验一基本网络命令与实验二路由器配置两大模块:系统讲解ping、ipconfig、trac…

2026/10/5 0:12:09

Java汽车租赁系统:状态机+事务锁解决并发下单

简介:这是一套基于Java Web技术栈开发的汽车租赁管理系统完整源码,面向Java初学者与Web开发入门者,适用于课程设计、毕业设计及中小型企业租赁业务原型开发。系统采用Servlet架构,后端对接Oracle数据库,涵盖用户管理、…

2026/10/5 0:12:09

vm_operations_struct深度解析:VMA虚拟内存操作核心机制

做过嵌入式Linux驱动或者仔细读过内核源码的朋友,一定见过vm_operations_struct这个结构体,但很多人对它的理解停留在“mmap的VMA操作集”这个层面。说实在的,这个结构体是用户态与内核态虚拟内存交互的命门,搞懂它,你…

2026/10/5 0:12:09

K8s存储实战:理清PV/PVC/StorageClass与NFS动态供给

刚接触 Kubernetes 存储这块的人,十个里有八个会被 PV、PVC、StorageClass 这一串名词绕晕。我最早学的时候也是,看了好几篇博客,例子跑通了,但换个场景立刻又不会了。后来在生产环境里给有状态服务配过存储、排查过 Pod 一直Cont…

2026/10/5 0:12:09

vSphere Client任务刷屏?Query container volume async根因排查解析

最近后台有朋友截图给我,vSphere Client 的“最近任务”列表被一条叫Query container volume async的任务刷屏了:进度条跑不完,隔十几秒又冒一条,有时候还直接从“正在运行”变成失败重试。第一反应可能是中毒、磁盘坏了&#xff…

2026/10/5 0:07:09

插件机制解析:从架构原理到failed to load plugins排查实战

写这篇东西的起因挺简单:前阵子帮朋友排查一个工具链启动就报错的问题,控制台翻来覆去就一句话——failed to load plugins,后面还跟着 web boot、entries did not activate 之类的提示。折腾了大半天,最后发现根因就是某个插件包…

2026/10/4 0:01:02

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/4 0:01:02

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/4 1:01:05

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑