尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

【AI 测评】Docker部署Umami:搭建自托管网站统计并接入Typecho

【AI 测评】Docker部署Umami:搭建自托管网站统计并接入Typecho 目录⛳前言⛳1.什么是Umami⛳2.安装Typecho个人网站示例⛳3.安装Umami⛳4.简单使用Umami⛳5.安装cpolar实现随时随地开发5.1 什么是cpolar5.2 部署cpolar⛳6.为Typecho配置域名⛳7.配置Umami检测个人网站⛳8.配置Umami实现随时随地查看网站数据⛳9.保留固定公网地址⛳结尾前言网站上线以后只知道“有人访问”远远不够。哪些页面访问最多、访客从哪里进入、使用手机还是电脑、一天中哪个时间段流量更高这些数据都会影响后续的内容和运营判断。如果不希望完全依赖第三方托管式分析平台可以把网站统计服务部署到自己管理的服务器中。Umami提供的就是这样一种自托管方式网站加载跟踪脚本以后将访问事件发送到自己的Umami实例再由后端数据库保存和汇总。本文会使用Typecho作为被统计的网站示例通过Docker Compose部署Umami和PostgreSQL再把Umami生成的跟踪代码加入Typecho主题实际验证网站访问数据能否进入分析后台。自托管并不意味着天然安全或自动满足所有隐私法规它更多解决的是分析服务和数据存储环境由自己管理的问题。实际采集哪些字段、是否需要访客同意以及数据应该保留多久仍然需要根据网站场景和相关规则进行判断。最后还会通过cpolar分别为Typecho和Umami建立公网入口让网站能够从外部网络访问同时也可以在其他网络环境登录自己的Umami后台查看统计结果。1.什么是UmamiUmami是一个开源、轻量、隐私优先的网站分析工具旨在为网站所有者提供一种简单、高效且不依赖第三方的访问数据统计解决方案。核心特点开源免费Umami 的代码完全公开托管在GitHub上遵循MIT许可证任何人都可以自由使用、修改和部署。自托管Self-hosted你可以将 Umami 部署在自己的服务器或云平台上如VPS、Docker、Railway、Vercel等所有数据都存储在你控制的环境中无需依赖Google Analytics、Plausible等外部服务。隐私友好Umami不使用Cookie默认情况下不收集个人身份信息PII不进行用户行为追踪符合 GDPR、CCPA 等隐私法规要求避免法律风险。界面简洁直观提供清晰的仪表盘展示关键指标如实时访客数页面浏览量PV与独立访客UV流量来源引荐网站、搜索引擎、直接访问等设备类型桌面/移动、浏览器、操作系统热门页面、访问路径等轻量高效前端脚本体积小通常 2KB对网站性能影响极低后端基于Node.js PostgreSQL或SQLite资源占用少适合个人博客、小型企业站甚至中型应用。支持多站点管理一个Umami实例可同时监控多个网站并通过不同跟踪ID区分数据。为什么选择Umami不想被Google Analytics的复杂设置和隐私政策困扰厌倦了Cookie同意弹窗影响用户体验希望真正拥有自己的访问数据而不是“租用”第三方平台那么Umami就是一个理想的选择——它用极简的设计回归网站分析的本质了解你的访客而不打扰他们。官网https://umami.isGitHubhttps://github.com/umami-software/umami如果你追求自主权、注重隐私、又希望获得专业级的流量洞察不妨试试Umami——让数据分析真正为你所控。2.安装Typecho个人网站示例为什么选择Typecho作为示例轻量级、简洁高效契合Umami的理念Typecho是一款基于PHP的轻量级博客系统代码简洁、运行高效。它不依赖臃肿的插件生态或复杂架构和Umami的“轻量、隐私优先”理念高度一致。两者都追求“极简主义”避免过度工程化非常适合对性能和隐私敏感的用户。适合个人开发者或独立博主Typecho常被用于搭建个人博客、技术笔记、作品集网站等目标用户与Umami的典型使用者高度重合。大多数使用Typecho的人更关注内容表达、数据自主权和网站安全而非商业推广因此对隐私保护有天然需求。易于集成无需复杂配置Typecho支持在主题中直接插入自定义JavaScript代码例如通过footer或header钩子。添加Umami的跟踪脚本只需在模板文件中添加一行代码简单直观不需要插件或数据库修改。对于非技术人员来说这种“零配置接入”非常友好。Typecho支持docker一键部署docker run --nametypecho \ --restart always \ --mount typetmpfs,destination/tmp \ -v ./typecho:/data \ -e PHP_TZAsia/Shanghai \ -e PHP_MAX_EXECUTION_TIME600 \ -p 90:80 \ -d 80x86/typecho:latest展示“从零开始”的完整流程使用Typecho作为案例可以完整展示一个“个人网站 自托管分析工具”的闭环搭建网站 → 安装Umami → 配置追踪 → 查看数据让读者更容易理解和复现整个过程尤其适合新手入门。强调“自主掌控”的价值观Typecho本身是开源的且不强制绑定第三方服务不像某些CMS强推Google Analytics。结合Umami使用能完美体现“从网站框架到数据分析全部由我控制”的理念。这种“端到端的自主性”正是本文的核心主张。docker部署完成后在浏览器中输入http://IP:90就能看到typecho的界面对typecho感兴趣的小伙伴可以参考这篇文章极空间NAS一键部署Typecho开箱即用的私人博客搭建指南 - cpolar 极点云官网3.安装Umami通过Docker部署OneNav在开始部署之前确保你的系统已经安装了 Docker。可以通过以下命令检查 Docker 是否已安装docker --version首先创建一下安装的目录并进入到该目录mkdir -p /docker/umami chmod -R 777 /umami创建并编辑docker-compose.yml文件vi docker-compose.ymlservices: umami: image: ghcr.io/umami-software/umami:postgresql-latest ports: - 3001:3000 environment: DATABASE_URL: postgresql://umami:umamidb:5432/umami DATABASE_TYPE: postgresql APP_SECRET: replace-me-with-a-random-string depends_on: db: condition: service_healthy restart: always healthcheck: test: [CMD-SHELL, curl http://localhost:3010/api/heartbeat] interval: 5s timeout: 5s retries: 5 db: image: postgres:15-alpine environment: POSTGRES_DB: umami POSTGRES_USER: umami POSTGRES_PASSWORD: umami volumes: - umami-db-data:/var/lib/postgresql/data restart: always healthcheck: test: [CMD-SHELL, pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}] interval: 5s timeout: 5s retries: 5 volumes: umami-db-data:启动容器docker-compose up -d部署完成后在浏览器中输入http://极空间IP:3001就能看到umami的界面4.简单使用Umami使用账号密码登录默认账号密码admin/umami登录成功点击右下角如图所示更改语言更改为中文更改账号密码如图所示点击添加网站我们可以看到需要使用域名此时我们需要给Typecho生成一个域名此时cpolar就派上用场了5.安装cpolar实现随时随地开发5.1 什么是cpolarcpolar是一款安全高效的内网穿透工具无需公网IP或复杂配置只需一条命令即可将本地服务器、Web服务或任意端口映射到公网让你随时随地远程访问内网应用特别适合开发调试、远程运维和应急部署等场景。5.2 部署cpolarcpolar 可以将你本地电脑中的服务如 SSH、Web、数据库映射到公网。即使你在家里或外出时也可以通过公网地址连接回本地运行的开发环境。❤️以下是安装cpolar步骤使用一键脚本安装命令sudo curl https://get.cpolar.sh | sh安装完成后执行下方命令查看cpolar服务状态如图所示即为正常启动sudo systemctl status cpolarCpolar安装和成功启动服务后在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可打开浏览器访问本地9200端口使用cpolar账户密码登录即可,登录后即可对隧道进行管理。6.为Typecho配置域名登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义本例使用了:ty注意不要与已有的隧道名称重复协议http本地地址90域名类型随机域名地区选择China Top创建成功后打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址接下来就可以在其他电脑或者移动端设备异地)上使用地址访问。685cfbef.r2.cpolar.top即为我为typecho生成的域名。7.配置Umami检测个人网站接下来我们在Umami添加网站填写typecho基础信息添加成功点进去查看详细信息发现没有信息别急我们开始配置获取Umami跟踪代码将代码嵌入Typecho主题我们去到Typecho页面登录Typecho后台 → 控制台 外观 编辑当前外观找到主题的footer.php文件有些主题可能是header.php或base.php在 标签之前插入Umami脚本建议放在footer.php而不是header.php避免阻塞页面渲染。保存文件后刷新你的博客首页打开浏览器开发者工具F12→ Network面板查看是否有向umami.is 或你自建域名的请求如api/collect登录Umami后台应能看到实时访问数据接下来就可以看到详细的分析你是否曾遇到这样的困扰自己搭建了开源、隐私友好的网站分析工具Umami数据安全又干净却只能在局域网或服务器本地访问一旦离开办公室或家中网络就无法实时查看网站流量、访客来源或热门页面传统方案往往需要复杂的公网IP配置、域名备案、反向代理甚至云服务器——成本高、门槛高、维护难。但其实有一种更轻量、更灵活的方式用cpolar实现内网穿透让部署在本地或私有服务器上的Umami分析面板秒变“可公网访问”的远程仪表盘。cpolar是一款简单高效的内网穿透工具无需公网IP、无需改动路由器设置只需一条命令就能将本地服务安全地暴露到互联网。配合自托管的Umami你不仅能完全掌控网站数据还能在手机、平板、咖啡馆电脑上随时打开浏览器实时监控流量动态。本文将手把手教你在本地或内网服务器部署Umami使用cpolar快速生成HTTP公网地址安全配置访问权限防止未授权访问最终实现 “我的分析面板全球任意地点随时看” 的自由体验。告别固定办公环境拥抱真正的数据自主权——从今天起用Umami cpolar打造你的移动数据分析中心。8.配置Umami实现随时随地查看网站数据登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道隧道名称可自定义本例使用了:umami注意不要与已有的隧道名称重复协议http本地地址3001域名类型随机域名地区选择China Top创建成功后打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址接下来就可以在其他电脑或者移动端设备异地)上使用地址访问。访问成功。9.保留固定公网地址使用cpolar为其配置二级子域名cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站该地址为固定地址不会随机变化。点击左侧的预留选择保留二级子域名地区选择china Top然后设置一个二级子域名名称我使用的是umami大家可以自定义。填写备注信息点击保留。登录cpolar web UI管理界面点击左侧仪表盘的隧道管理——隧道列表找到所要配置的隧道点击右侧的编辑。修改隧道信息将保留成功的二级子域名配置到隧道中域名类型选择二级子域名Sub Domain填写保留成功的二级子域名地区: China Top点击更新更新完成后打开在线隧道列表此时可以看到随机的公网地址已经发生变化地址名称也变成了保留和固定的二级子域名名称。最后我们使用固定的公网地址在任意设备的浏览器中访问可以看到成功访问的页面这样一个永久不会变化的二级子域名公网网址即设置好了。结尾完成以上配置后Umami已经通过Docker Compose运行在服务器中并使用PostgreSQL保存网站统计数据。本文使用Typecho作为测试网站为它建立公网访问地址以后在Umami中创建对应的网站项目再将生成的跟踪代码加入Typecho主题。网站页面被访问时浏览器会加载Umami脚本并向对应的分析服务提交访问事件。数据进入Umami以后可以在后台查看页面访问量、访客来源、设备和热门页面等统计信息用来了解网站的基础访问情况。通过cpolar进一步为Umami的3001端口创建公网隧道后原本只能在本地或局域网中打开的分析后台也可以从其他网络环境访问。公网使用前应先修改默认管理员密码并确保数据库密码、APP_SECRET等配置不再使用示例值。如果需要长期保存访问入口还可以根据实际套餐配置固定二级子域名在账号和隧道配置保持有效期间使用固定地址。从Typecho网站、Umami跟踪脚本到PostgreSQL数据存储和远程查看本文完成了一套基础的自托管网站访问统计流程。如果小假的内容对你有帮助请点赞评论收藏。创作不易大家的支持就是我坚持下去的动力
返回列表