Docker 部署 Umami 避坑指南

奶狗 发表于 3 天前 浏览 1399 分类 日常
AD

广告位出租

最近做了一个重要的架构决策:彻底弃用百度统计,转投自建开源方案 Umami。

做出这一改变主要基于两点考量:

  1. 体验与信任危机:百度统计依赖 unload事件,常引发浏览器报错与性能损耗;加之广告插件的广泛拦截,数据准确性大打折扣。
  2. 隐私合规趋势:为践行“隐私友好”原则,我不再希望将访客数据交由第三方处理。自建服务能确保所有流量数据完全掌握在自己手中。

然而,国内 Docker 环境的j巨变让部署并非一帆风顺。由于网络限制,常规镜像源频频失败。排查后发现,许多旧教程并未指向 Docker Hub 的标准镜像,导致拉取受阻。

经过反复调试。现将一份适配国内环境的 docker-compose.yml配置分享如下,希望能助你绕过深坑,快速落地。

配置教程

在需要放入umami信息的文件夹建立 docker-compose.yaml 文件,填写下面的内容:

version: '3'
services:
  umami:
    container_name: umami
    image: umamisoftware/umami:postgresql-latest
    ports:
      - "3000:3000"
    environment:
      DATABASE_URL: postgresql://umami:umami@db:5432/umami
      DATABASE_TYPE: postgresql
      HASH_SALT: replace-me-with-a-random-string
    depends_on:
      - db
    restart: always
  db:
    container_name: umami-db
    image: postgres:12-alpine
    environment:
      POSTGRES_DB: umami
      POSTGRES_USER: umami
      POSTGRES_PASSWORD: umami
    volumes:
      - ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
      - ./umami-db-data:/var/lib/postgresql/data
    restart: always

注意,umami的ports中,3000:3000 可以将前面的3000更换成其他闲置端口。 然后通过ssh访问服务器后,cd进这个文件夹,然后执行docker-compose up -d即可配置完成。

喜欢这篇内容吗?

相关内容

阿里云,腾讯云,华为云等众多云计算服务商ASN号大全

  • 教程

比比主题自动签到插件技术实现解析

  • 日常

Docker 部署 Umami 避坑指南

  • 日常