Mitināt Umami Managed VPS serverī: jūsu tīmekļa analītika jūsu serverī

Mitināt Umami Managed VPS serverī nozīmē glabāt savu vietņu analītiku uz savas mašīnas, ko mūsu komandas uztur atjauninātu un uzrauga dienu un nakti. Umami ir atvērtā koda programmatūra ar MIT licenci, kas mēra apmeklējumu bez sīkdatnēm. Šis ceļvedis seko tā oficiālajai dokumentācijai: uzstādīšana ar Docker Compose un PostgreSQL, HTTPS, pirmā pieteikšanās, izsekošanas skripts, ko projekts saka par personas datiem, noderīgi iestatījumi, rezerves kopijas un atjauninājumi.

Simon Vasconcelos Lee Autors: Publicēts 2026. gada 15. novembrīLasīšanas laiks: 12 minūtes

Visi ceļveži

Galvenais

  1. MIT licence ļauj Umami brīvi izmantot, mainīt un izplatīt tālāk gan darbā, gan citur, ja vien saglabājat tā autortiesību paziņojumu.
  2. Uzstādiet to ar Docker Compose: projekta fails palaiž Umami un tā PostgreSQL datubāzi, kas kopš 3. versijas ir vienīgā atbalstītā datubāze.
  3. Ģenerējiet APP_SECRET un TWO_FACTOR_ENCRYPTION_KEY nejauši, padariet Umami pieejamu caur HTTPS savā apakšdomēnā un uzreiz nomainiet konta admin paroli.
  4. Pievienojiet savu vietni un pēc tam ielīmējiet tās izsekošanas skriptu savu lapu sadaļā <head>: izsekotājs neizmanto sīkdatnes.
  5. Katru dienu eksportējiet datubāzi ar pg_dump, glabājiet failu .env drošā vietā un atjauniniet ar docker compose pull.

Ko dara Umami

Umami ir atvērtā koda tīmekļa un produktu analītikas platforma. Tā dokumentācija apraksta rīku, kas vienuviet apvieno apmeklējumu, kampaņas, apmeklētāju uzvedību, konversijas, noturēšanu un ieņēmumus, no pirmā apmeklējuma līdz rezultātiem, kas svarīgi jūsu uzņēmumam. Tas ir uzrakstīts TypeScript valodā uz Next.js, un tā Docker attēls darbojas zem konta bez privilēģijām.

Viena instance izseko vairākas vietnes: katra saņem savu identifikatoru un izsekošanas skriptu, un jūsu kolēģi orientējas, izmantojot kontus un komandas.

Ko atļauj MIT licence

Umami tiek publicēts ar MIT licenci, Umami Software, Inc. vārdā. Tā bez maksas piešķir tiesības programmatūru izmantot, kopēt, mainīt, apvienot, publicēt, izplatīt, apakšlicencēt un pārdot tās kopijas. Tāpēc jūs varat to darbināt savam uzņēmumam un savu klientu vietnēm, nepērkot nekādu licenci.

Tās vienīgais nosacījums: autortiesību paziņojums un atļaujas paziņojums pavada visas programmatūras kopijas vai būtiskas tās daļas. Kā jebkura MIT licence, tā nodrošina programmatūru «tādu, kāda tā ir», bez garantijas.

Sīkdatnes un personas dati: ko saka projekts

Dokumentācija pasniedz Umami kā analītiku bez sīkdatnēm, bez starpvietņu izsekošanas un bez automātiskas personas datu vākšanas. Mitināts savā serverī, tas glabā jūsu analītiku jūsu serverī: jūs izlemjat, kur tā atrodas un cik ilgi tā tiek glabāta.

JautājumsKo saka projektsAvots
SīkdatnesTīmekļa izsekotājs neizmanto sīkdatnes; vai jūsu vietnei vajadzīgs paziņojums par sīkdatnēm, ir atkarīgs no citiem izmantotajiem pakalpojumiem un piemērojamām prasībāmFAQ
Vāktie datiLapu skatījumi, novirzītāju adreses, pārlūkprogrammas, operētājsistēmas, ierīču veidi un aptuvena atrašanās vietaFAQ
IP adreseSesiju tabulā nav kolonnas IP adresei; sesijas identifikators ir jaucējkods no vietnes, adreses, pārlūkprogrammas un sāls, ko pēc noklusējuma maina katru mēnesiShēma un kods, 3.4.1 versija
GlabāšanaMitinot savā serverī, dati tiek glabāti, līdz jūs tos izdzēšatFAQ
VDARUmami ir veidots, domājot par privātumu, un atbilstība ir atkarīga no tā, kā jūs to konfigurējat un izmantojatFAQ
Jūsu sūtītie datiPar apmeklētāja identifikatoru vai notikumu īpašībām, ko izvēlaties sūtīt, atbildat jūsIevads

Trīs izsekošanas skripta iestatījumi, ja vēlaties, iet tālāk: data-exclude-search noņem meklēšanas parametrus no ierakstītajām adresēm, data-exclude-hash noņem fragmentu aiz restītes, un data-do-not-track izslēdz izsekošanu pārlūkprogrammām, kas paziņo Do Not Track izvēli. Dokumentācija norāda, ka šis pēdējais iestatījums pats par sevi nav pilnīgs piekrišanas pārvaldības risinājums.

Ja identificējat pieteikušos apmeklētājus ar data-distinct-id vai umami.identify(), dokumentācija iesaka iekšēju lietotāja identifikatoru vai jaucējkodu, nevis e-pasta adresi: vērtību var izlasīt lapas HTML kodā.

Uzstādīšana ar Docker Compose un PostgreSQL

Repozitorijs piedāvā docker-compose.yml, kas palaiž Umami un tā PostgreSQL datubāzi. Kopš 3. versijas PostgreSQL ir vienīgā atbalstītā datubāze, vismaz 12.14 versija, un dokumentācija iesaka iestatīt tai UTC laika joslu. Serverī, kur uzstādīts Docker, izveidojiet mapi un sāciet ar tās noslēpumiem, kas nejauši ģenerēti ar openssl, kā iesaka dokumentācija:

Terminālis
cat > .env <<EOF
POSTGRES_PASSWORD=$(openssl rand -hex 24)
APP_SECRET=$(openssl rand -hex 32)
TWO_FACTOR_ENCRYPTION_KEY=$(openssl rand -hex 32)
EOF
chmod 600 .env

Pēc tam blakus novietojiet šo compose.yaml. Tas seko projekta failam 3.4.1 versijā ar divām izmaiņām: noslēpumi nāk no faila .env, un ports ir publicēts tikai uz 127.0.0.1.

compose.yaml
services:
  umami:
    image: ghcr.io/umami-software/umami:latest
    ports:
      - "127.0.0.1:3000:3000"
    environment:
      DATABASE_URL: postgresql://umami:${POSTGRES_PASSWORD}@db:5432/umami
      APP_SECRET: ${APP_SECRET}
      TWO_FACTOR_ENCRYPTION_KEY: ${TWO_FACTOR_ENCRYPTION_KEY}
    depends_on:
      db:
        condition: service_healthy
    init: true
    restart: always
    healthcheck:
      test: ["CMD-SHELL", "curl http://localhost:3000/api/heartbeat"]
      interval: 5s
      timeout: 5s
      retries: 5
  db:
    image: postgres:15-alpine
    environment:
      POSTGRES_DB: umami
      POSTGRES_USER: umami
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    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:
Terminālis
docker compose up -d
curl -s http://127.0.0.1:3000/api/heartbeat

Uzstādīšanas dokumentācija nenosauc ne atmiņas, ne procesora apjomu. Izmērs ir atkarīgs no izsekoto vietņu apmeklējuma un glabāto datu apjoma. Ar Managed VPS aprakstiet mums savu lietojumu, un mēs jums iesakām piemērotu izmēru.

HTTPS: reversais starpniekserveris

Umami klausās HTTP uz porta 3000, un dokumentācija iesaka to piedāvāt aiz jūsu tīmekļa servera, caur reverso starpniekserveri. Piešķiriet tam savu apakšdomēnu, piemēram, stats.example.com, kas ar A un AAAA ierakstiem norāda uz serveri. Lai Umami piedāvātu zem ceļa, izmanto BASE_PATH, mainīgo, ko nolasa lietojumprogrammas būvēšanas laikā: ar publicēto attēlu apakšdomēns ir tiešākais ceļš.

Starpniekserverim jānodod arī apmeklētāja adrese. Umami to nolasa no saņemtajām galvenēm, tostarp X-Real-IP un X-Forwarded-For: tas to izmanto, lai atšķirtu apmeklētājus un noteiktu viņu valsti. Ja jūsu starpniekserveris izmanto citu galveni, to nosauc CLIENT_IP_HEADER.

Ar Caddy

Caddy pats iegūst Let’s Encrypt sertifikātu un ieslēdz HTTPS. Tā direktīva reverse_proxy pēc noklusējuma iestata X-Forwarded-For: pietiek ar šīm trim rindām.

Caddyfile
stats.example.com {
  reverse_proxy 127.0.0.1:3000
}

Ar Nginx un Certbot

Šis bloks seko Umami dokumentācijas Nginx piemēram un klausās uz porta 80, lai Certbot varētu ieslēgt HTTPS:

Nginx bloks
server {
  listen 80;
  listen [::]:80;
  server_name stats.example.com;

  location / {
    proxy_pass http://127.0.0.1:3000;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  }
}

Pēc tam Certbot uzstāda sertifikātu un parūpējas par tā atjaunošanu:

Terminālis
sudo certbot --nginx

Pirmā pieteikšanās: administratora konts un divfaktoru autentifikācija

Izveidojot savu datubāzi, Umami atver administratora kontu: lietotājvārds admin, parole umami. Dokumentācija lūdz šo paroli nomainīt pirmajā pieteikšanās reizē.

  1. Atveriet savu HTTPS adresi un piesakieties ar admin un umami.
  2. Atveriet Settings no profila pogas sānjoslā, pēc tam Profile, un noklikšķiniet Change password.
  3. Cilnē Security ieslēdziet divfaktoru autentifikāciju: noskenējiet QR kodu ar savu autentifikācijas lietotni, ievadiet sešu ciparu kodu un pēc tam drošā vietā noglabājiet desmit rezerves kodus, jo tie tiek parādīti tikai vienreiz.

Glabājiet TWO_FACTOR_ENCRYPTION_KEY kopā ar savām rezerves kopijām: dokumentācija brīdina, ka šīs atslēgas zaudēšana vai maiņa padara saglabātos noslēpumus nelasāmus, un tad katram lietotājam divfaktoru autentifikācija jāiestata no jauna.

Vietnes un tās izsekošanas skripta pievienošana

  1. Sadaļā Websites noklikšķiniet Add website.
  2. Piešķiriet vietnei nosaukumu un pēc tam tās domēnu: Umami to izmanto, lai izslēgtu jūsu pašu lapas no novirzītāju saraksta.
  3. Atveriet šai vietnei Edit un nokopējiet kodu no sadaļas Tracking code.
  4. Ielīmējiet to savu lapu sadaļā <head> un pēc tam apmeklējiet savu vietni: dati uzreiz parādās panelī.
Izsekošanas kods, sadaļā head
<script defer src="https://stats.example.com/script.js" data-website-id="your-website-id"></script>

Savs skripta nosaukums

Daži reklāmu bloķētāji bloķē visu, kas izskatās pēc analītikas. Mitināts savā serverī, Umami jau tiek piedāvāts no jūsu paša domēna, un divi mainīgie iet vēl tālāk: TRACKER_SCRIPT_NAME piešķir skriptam citu nosaukumu, nevis script.js, un COLLECT_API_ENDPOINT pārdēvē datu vākšanas galapunktu, nevis /api/send. Pēc tam skripts pats izsauc jauno galapunktu; jūsu lapās mainās tikai izsekošanas koda avots.

compose.yaml, sadaļā environment
TRACKER_SCRIPT_NAME: "stats.js"
COLLECT_API_ENDPOINT: "/api/collect"

Noderīgi iestatījumi

Šie vides mainīgie tiek ievietoti compose.yaml pakalpojumā umami, pēc tam docker compose up -d izveido konteineru no jauna, lai tos ņemtu vērā:

MainīgaisKo tas daraVērtība
DISABLE_TELEMETRYIzslēdz anonīmo telemetriju, ko Umami sūta projektam lietojumprogrammas uzlabošanai1
PRIVATE_MODEIzslēdz visus ārējos tīkla izsaukumus, tostarp vietņu ikonas, ko pēc noklusējuma piedāvā DuckDuckGo1
DISABLE_UPDATESIzslēdz jaunu versiju pārbaudi1
IGNORE_IPIzslēdz no datu vākšanas IP adreses un CIDR diapazonus, piemēram, jūsu biroju adresesSaraksts, atdalīts ar komatiem
SALT_ROTATIONNosaka, cik bieži mainās sāls, uz kuras balstās sesiju identifikatoriPēc noklusējuma month
REDIS_URLPievieno Redis kešatmiņu, ko dokumentācija iesaka vietnēm ar lielu apmeklējumu vai vairākām instancēmJūsu Redis adrese
MCP_ENABLEDAtver galapunktu /mcp: jūsu MI asistents lasa jūsu analītiku tikai lasīšanas režīmā, ar API atslēgu, kas izveidota sadaļā Settings, API keys1

Rezerves kopijas

Viss, ko Umami glabā, atrodas tā PostgreSQL datubāzē: konti, vietnes, komandas un analītika. Eksportējiet to katru dienu un tieši pirms katra atjauninājuma: mitinot savā serverī, šie dati tiek glabāti bez termiņa. Blakus datubāzei fails .env glabā noslēpumus, bez kuriem to nevar izmantot:

ElementsKo tas glabāVai kopēt
PostgreSQL datubāzeKontus, vietnes, komandas, pārskatus un visu analītikuObligāti, ar pg_dump
.envDatubāzes paroli, APP_SECRET un divfaktoru autentifikācijas atslēguObligāti, šifrētu
compose.yamlJūsu instances konfigurācijuIeteicams

Datubāzes eksports, tai darbojoties

pg_dump izveido konsekventu eksportu, kamēr datubāze tiek izmantota. Pielāgotais formāts -Fc ir saspiests, un to atjauno ar pg_restore:

Terminālis, compose.yaml mapē
docker compose exec -T db pg_dump -U umami -d umami -Fc > umami-$(date +%F).dump

Ieplānojiet šo komandu serverī vismaz reizi dienā, izkārtojiet eksportus, kas uzkrājas, un nosūtiet kopiju citur. Glabāti servera diskā, šie eksporti nonāk arī tā nakts rezerves kopijās.

Atjaunošana

  1. Apturiet Umami, atstājot datubāzi darbojamies: docker compose stop umami.
  2. Atjaunojiet eksportu datubāzē, aizvietojot esošos objektus.
  3. Startējiet Umami no jauna, pēc tam pārbaudiet, vai jūsu vietnes un to analītika ir vietā.
Terminālis
docker compose stop umami
docker compose exec -T db pg_restore -U umami -d umami --clean --if-exists < umami-YYYY-MM-DD.dump
docker compose start umami

Laiku pa laikam atkārtojiet šo vingrinājumu ar kopiju: tā jūs pārbaudāt, vai rezerves kopija darbojas.

Atjauninājumi

Dokumentācija dod divas komandas, kas jāpalaiž no mapes ar compose.yaml. Datubāze paliek savā sējumā:

Terminālis
docker compose pull
docker compose up --force-recreate -d

Restartējot konteiners pats piemēro shēmas migrācijas. Versijā 3.4.0 no 2026. gada 17. septembra tādas bija divas, anotācijām un API atslēgām; versijā 3.4.1 no 2026. gada 23. oktobra to nav. Pēc lielas versijas maiņas, piemēram, pārejas uz 3. versiju, dokumentācija iesaka PostgreSQL palaist ANALYZE, lai paneļi atgūtu savu ātrumu:

Terminālis
docker compose exec db psql -U umami -d umami -c "ANALYZE;"

Kurš ko dara Managed VPS serverī

Mitināšana savā serverī prasa uzturēt serveri papildus lietojumprogrammai. Ar Managed VPS mūsu komandas uzņemas serveri un proaktīvi seko jūsu instancei; Umami paliek jūsu programmatūra ar saviem iestatījumiem un datiem.

TematsMūsu komandasJūs
ServerisSistēmas un drošības atjauninājumi, ieskaitot iejaukšanos serverīBrīdis, kas der jūsu darbam
UzraudzībaServeris tiek uzraudzīts 24/7, iejaucoties, negaidot jūsu zvanuJūsu instances žurnālu lasīšana
UmamiProaktīva sekošana: kļūdas, palēninājumi un diska vieta tiek pamanīti, labojums tiek ieteiktsTā uzstādīšana, atjauninājumi un iestatījumi, ko ieviešat jūs vai jūsu MI asistents
Vietnes un analītikaServeris, kas tās nes, uzraudzīts un ar rezerves kopijāmKonti, izsekotās vietnes, izsekošanas skripts un datu glabāšanas ilgums
Rezerves kopijasKatru nakti, šifrētas un glabātas ārpus mašīnas; atjaunošana iekļautaUmami raksturīgie eksporti un atjaunošanas pieprasījums, kad tas vajadzīgs
MigrācijaJūsu pašreizējā servera migrācija, bez maksasPārslēgšanās brīdis

Ja vēlaties, lai mūsu komandas iejaucas pašā lietojumprogrammā, šis pakalpojums tiek rēķināts par stundu vai par fiksētu summu, ar novērtējumu, kas paziņots pirms iejaukšanās.

Umami serverī, ko uzturam jūsu vietā

Ar Simafri Managed VPS mūsu komandas uztur jūsu Umami instances serveri atjauninātu, uzrauga to dienu un nakti un iejaucas, negaidot jūsu zvanu; tās arī proaktīvi seko jūsu instancei un iesaka noderīgus labojumus, ko ieviešat jūs paši vai jūsu MI asistents. Rezerves kopijas katru nakti tiek šifrētas un glabātas ārpus mašīnas, to atjaunošana ir iekļauta, un jūsu pašreizējā servera migrācija ir bez maksas.

Skatīt Managed VPS

Biežāk uzdotie jautājumi

Vai Umami uzņēmumam ir bez maksas?

Jā. Umami ir ar MIT licenci: varat to izmantot, mainīt un izplatīt tālāk darbā, nepērkot nekādu licenci, ja vien saglabājat tā autortiesību paziņojumu. Paliek tikai servera izmaksas, uz kura tas darbojas.

Vai Umami izmanto sīkdatnes?

Nē. Projekta FAQ norāda, ka Umami tīmekļa izsekotājs neizmanto sīkdatnes. Vai jūsu vietnei vajadzīgs paziņojums par sīkdatnēm, ir atkarīgs no citiem tajā izmantotajiem pakalpojumiem un piemērojamām prasībām.

Vai Umami darbojas ar MySQL?

Kopš 3. versijas vairs ne: Umami atbalsta PostgreSQL, vismaz 12.14 versiju. 2. versijas instance ar MySQL vispirms pārceļ savus datus uz PostgreSQL ar projekta migrācijas ceļvedi un pēc tam pāriet uz 3. versiju.

Kā uzstādīt Umami ar Docker Compose?

Sāciet no projekta docker-compose.yml, kas palaiž Umami un PostgreSQL, ar nejaušiem noslēpumiem failā .env un portu, publicētu uz 127.0.0.1. Palaidiet docker compose up -d un pēc tam pirms tā novietojiet reverso starpniekserveri ar HTTPS, apakšdomēnā.

Kādi ir Umami noklusējuma pieteikšanās dati?

Uzstādīšanas laikā Umami izveido kontu admin ar paroli umami. Nomainiet to pirmajā pieteikšanās reizē sadaļā Settings, pēc tam Profile, un ieslēdziet divfaktoru autentifikāciju cilnē Security, tiklīdz TWO_FACTOR_ENCRYPTION_KEY ir iestatīts.

Kā pārdēvēt Umami izsekošanas skriptu?

Savā serverī mitinātā instancē TRACKER_SCRIPT_NAME piešķir skriptam citu nosaukumu, nevis script.js, un COLLECT_API_ENDPOINT pārdēvē datu vākšanas galapunktu /api/send. Pēc tam savās lapās nomainiet izsekošanas koda avotu.

Kā veidot Umami rezerves kopiju?

Katru dienu eksportējiet PostgreSQL datubāzi ar pg_dump no datubāzes konteinera un atsevišķi glabājiet failu .env, jo tajā ir APP_SECRET un divfaktoru autentifikācijas atslēga. Atjaunojiet ar pg_restore un regulāri pārbaudiet atjaunošanu.

Vai Managed VPS aptver Umami?

Managed VPS aptver serveri: sistēmu, drošību, uzraudzību un rezerves kopijas. Mūsu komandas proaktīvi seko arī jūsu instancei un iesaka noderīgus labojumus, ko ieviešat jūs. Iejaukšanās lietojumprogrammā tiek rēķināta par stundu vai par fiksētu summu.

Avoti un oficiālā dokumentācija

Sazinieties ar mums