Gostovanje Umami na Managed VPS: vaša spletna analitika na vašem strežniku

Gostovanje Umami na Managed VPS pomeni, da analitika vaših spletišč ostane na lastnem stroju, ki ga naše ekipe posodabljajo in podnevi in ponoči spremljajo. Umami je prosta programska oprema pod licenco MIT, ki meri obisk brez piškotkov. Ta vodnik sledi njegovi uradni dokumentaciji: namestitev z Docker Compose in PostgreSQL, HTTPS, prva prijava, sledilni skript, kaj projekt pravi o osebnih podatkih, koristne nastavitve, varnostne kopije in posodobitve.

Simon Vasconcelos Lee Avtor: Objavljeno 15. novembra 2026Čas branja: 12 minut

Vsi vodniki

Na kratko

  1. Licenca MIT dovoljuje prosto uporabo, spreminjanje in nadaljnje razširjanje programa Umami, v podjetju in drugod, če ohranite njegovo obvestilo o avtorskih pravicah.
  2. Namestite ga z Docker Compose: datoteka projekta zažene Umami in njegovo zbirko PostgreSQL, edino podprto zbirko od različice 3.
  3. Naključno ustvarite APP_SECRET in TWO_FACTOR_ENCRYPTION_KEY, Umami strežite prek HTTPS na lastni poddomeni, nato takoj spremenite geslo računa admin.
  4. Dodajte svoje spletišče, nato njegov sledilni skript prilepite v <head> svojih strani: sledilnik ne uporablja piškotkov.
  5. Zbirko vsak dan izvozite s pg_dump, datoteko .env hranite na varnem, posodabljajte pa z docker compose pull.

Kaj počne Umami

Umami je odprtokodna platforma za spletno in produktno analitiko. Njegova dokumentacija opisuje orodje, ki združuje obisk, kampanje, vedenje obiskovalcev, konverzije, zadrževanje in prihodke, od prvega obiska do rezultatov, ki štejejo za vaše podjetje. Napisan je v TypeScriptu na Next.js, njegova slika Docker pa teče pod neprivilegiranim računom.

Ena instanca spremlja več spletišč: vsako dobi svoj identifikator in sledilni skript, vaši sodelavci pa se znajdejo prek računov in ekip.

Kaj dovoljuje licenca MIT

Umami je objavljen pod licenco MIT, v imenu Umami Software, Inc. Ta brezplačno podeljuje pravico do uporabe, kopiranja, spreminjanja, združevanja, objave, razširjanja, podlicenciranja in prodaje kopij programske opreme. Poganjate ga torej lahko za svoje podjetje in za spletišča svojih strank, ne da bi morali kupiti licenco.

Njen edini pogoj: obvestilo o avtorskih pravicah in obvestilo o dovoljenju spremljata vse kopije ali bistvene dele programske opreme. Kot vsaka licenca MIT programsko opremo ponuja „takšno, kot je“, brez garancije.

Piškotki in osebni podatki: kaj pravi projekt

Dokumentacija Umami predstavlja kot analitiko brez piškotkov, brez sledenja med spletišči in brez samodejnega zbiranja osebnih podatkov. Ko ga gostite sami, vaša analitika ostane na vašem strežniku: vi odločate, kje živi in kako dolgo ostane.

VprašanjeKaj pravi projektVir
PiškotkiSpletni sledilnik ne uporablja piškotkov; ali vaše spletišče potrebuje obvestilo o piškotkih, je odvisno od drugih storitev, ki jih uporabljate, in od zahtev, ki veljajoPogosta vprašanja
Zbrani podatkiOgledi strani, URL-ji napotiteljev, brskalniki, operacijski sistemi, vrste naprav in približna lokacijaPogosta vprašanja
Naslov IPTabela sej nima stolpca za naslov IP; identifikator seje je zgoščena vrednost spletišča, naslova, brskalnika in soli, ki se privzeto menja vsak mesecShema in koda, različica 3.4.1
HrambaPri samostojnem gostovanju se podatki hranijo, dokler jih ne izbrišetePogosta vprašanja
GDPRUmami je zasnovan z mislijo na zasebnost, skladnost pa je odvisna od tega, kako ga nastavite in uporabljatePogosta vprašanja
Podatki, ki jih pošiljateZa identifikator obiskovalca ali lastnosti dogodkov, ki jih izberete za pošiljanje, odgovarjate viUvod

Tri nastavitve sledilnega skripta gredo po želji še dlje: data-exclude-search iz zabeleženih URL-jev odstrani iskalne parametre, data-exclude-hash odstrani zgoščeni del (hash), data-do-not-track pa izklopi sledenje za brskalnike, ki izražajo nastavitev Do Not Track. Dokumentacija pripominja, da ta zadnja nastavitev sama po sebi ni celovita rešitev za upravljanje privolitev.

Če prijavljene obiskovalce prepoznavate z data-distinct-id ali umami.identify(), dokumentacija namesto e-poštnega naslova priporoča notranji identifikator uporabnika ali zgoščeno vrednost: vrednost je mogoče prebrati v HTML strani.

Namestitev z Docker Compose in PostgreSQL

Repozitorij vsebuje docker-compose.yml, ki zažene Umami in njegovo zbirko PostgreSQL. Od različice 3 je PostgreSQL edina podprta zbirka, najmanj v različici 12.14, dokumentacija pa priporoča, da jo nastavite na časovni pas UTC. Na strežniku z nameščenim Dockerjem ustvarite mapo in začnite z njenimi skrivnostmi, naključno ustvarjenimi z openssl, kot predlaga dokumentacija:

Terminal
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

Nato poleg nje postavite ta compose.yaml. Sledi datoteki projekta v različici 3.4.1, z dvema spremembama: skrivnosti prihajajo iz datoteke .env, vrata pa so objavljena le na 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:
Terminal
docker compose up -d
curl -s http://127.0.0.1:3000/api/heartbeat

Dokumentacija o namestitvi ne navaja potrebnega pomnilnika ali procesorja. Velikost je odvisna od obiska spremljanih spletišč in obsega podatkov, ki jih hranite. Na Managed VPS nam opišite svojo rabo in priporočimo vam ustrezno velikost.

HTTPS: obratni posredniški strežnik

Umami posluša prek HTTP na vratih 3000, dokumentacija pa predlaga, da ga strežete za svojim spletnim strežnikom, prek obratnega posredniškega strežnika. Dajte mu lastno poddomeno, kot je stats.example.com, ki z zapisoma A in AAAA kaže na strežnik. Streženje programa Umami pod potjo poteka prek BASE_PATH, spremenljivke, ki se prebere ob gradnji aplikacije: z objavljeno sliko je poddomena neposredna pot.

Posredniški strežnik mora posredovati tudi naslov obiskovalca. Umami ga prebere iz glav, ki jih prejme, med njimi X-Real-IP in X-Forwarded-For: z njim razlikuje obiskovalce in ugotovi njihovo državo. Če vaš posredniški strežnik uporablja drugo glavo, jo poimenuje CLIENT_IP_HEADER.

S Caddyjem

Caddy sam pridobi potrdilo Let’s Encrypt in vključi HTTPS. Njegova direktiva reverse_proxy privzeto nastavi X-Forwarded-For: te tri vrstice so vse, kar potrebujete.

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

Z Nginxom in Certbotom

Ta blok sledi primeru Nginx iz dokumentacije Umami in posluša na vratih 80, da lahko Certbot vzpostavi HTTPS:

Blok Nginx
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;
  }
}

Certbot nato namesti potrdilo in poskrbi za njegovo obnavljanje:

Terminal
sudo certbot --nginx

Prva prijava: skrbniški račun in dvostopenjsko preverjanje pristnosti

Ko ustvari svojo zbirko, Umami odpre skrbniški račun: uporabniško ime admin, geslo umami. Dokumentacija prosi, naj to geslo spremenite ob prvi prijavi.

  1. Odprite svoj naslov HTTPS in se prijavite z admin in umami.
  2. Z gumbom profila v stranski vrstici odprite Settings, nato Profile, in kliknite Change password.
  3. V zavihku Security vključite dvostopenjsko preverjanje pristnosti: kodo QR skenirajte s svojo aplikacijo za preverjanje pristnosti, vpišite šestmestno kodo, nato deset rezervnih kod shranite na varno, saj se pokažejo le enkrat.

TWO_FACTOR_ENCRYPTION_KEY hranite skupaj s svojimi varnostnimi kopijami: dokumentacija opozarja, da izguba ali sprememba tega ključa naredi shranjene skrivnosti neberljive, vsak uporabnik pa se mora nato znova vpisati v dvostopenjsko preverjanje pristnosti.

Dodajanje spletišča in njegovega sledilnega skripta

  1. V Websites kliknite Add website.
  2. Spletišču dajte ime, nato njegovo domeno: Umami z njo iz seznama napotiteljev izloči vaše lastne strani.
  3. Pri tem spletišču odprite Edit in kopirajte kodo iz razdelka Tracking code.
  4. Prilepite jo v <head> svojih strani, nato obiščite svoje spletišče: podatki se takoj pojavijo na nadzorni plošči.
Sledilna koda, v head
<script defer src="https://stats.example.com/script.js" data-website-id="your-website-id"></script>

Lastno ime skripta

Nekateri zaviralci oglasov blokirajo vse, kar je videti kot analitika. Pri samostojnem gostovanju se Umami že streže z vaše lastne domene, dve spremenljivki pa gresta še dlje: TRACKER_SCRIPT_NAME skriptu da drugo ime kot script.js, COLLECT_API_ENDPOINT pa preimenuje končno točko za zbiranje, namesto /api/send. Skript nato sam kliče novo končno točko; na vaših straneh se spremeni le vir sledilne kode.

compose.yaml, pod environment
TRACKER_SCRIPT_NAME: "stats.js"
COLLECT_API_ENDPOINT: "/api/collect"

Koristne nastavitve

Te spremenljivke okolja gredo v storitev umami datoteke compose.yaml, nato docker compose up -d znova ustvari vsebnik, da jih upošteva:

SpremenljivkaKaj narediVrednost
DISABLE_TELEMETRYIzklopi anonimno telemetrijo, ki jo Umami pošilja projektu za izboljšanje aplikacije1
PRIVATE_MODEIzklopi vse zunanje omrežne klice, vključno z ikonami spletišč, ki se privzeto strežejo z DuckDuckGo1
DISABLE_UPDATESIzklopi preverjanje novih različic1
IGNORE_IPIz zbiranja podatkov izloči naslove IP in razpone CIDR, na primer tiste iz vaših pisarnSeznam, ločen z vejicami
SALT_ROTATIONDoloča, kako pogosto se menja sol, na kateri temeljijo identifikatorji sejPrivzeto month
REDIS_URLDoda predpomnilnik Redis, ki ga dokumentacija priporoča za spletišča z velikim obiskom ali več instancVaš naslov Redis
MCP_ENABLEDOdpre končno točko /mcp: vaš AI pomočnik bere vašo analitiko samo za branje, s ključem API, ustvarjenim v Settings, API keys1

Varnostne kopije

Vse, kar Umami hrani, živi v njegovi zbirki PostgreSQL: računi, spletišča, ekipe in analitika. Izvozite jo vsak dan in tik pred vsako posodobitvijo: pri samostojnem gostovanju se ti podatki hranijo brez časovne omejitve. Poleg zbirke datoteka .env hrani skrivnosti, ki jo naredijo uporabno:

ElementKaj hraniVarnostna kopija
Zbirka PostgreSQLRačune, spletišča, ekipe, poročila in vso analitikoObvezno, s pg_dump
.envGeslo zbirke, APP_SECRET in ključ dvostopenjskega preverjanja pristnostiObvezno, šifrirano
compose.yamlKonfiguracijo vaše instancePriporočeno

Izvoz zbirke med delovanjem

pg_dump naredi dosleden izvoz, medtem ko je zbirka v uporabi. Format po meri, -Fc, je stisnjen in se obnovi s pg_restore:

Terminal, v mapi datoteke compose.yaml
docker compose exec -T db pg_dump -U umami -d umami -Fc > umami-$(date +%F).dump

Ta ukaz na strežniku načrtujte vsaj enkrat na dan, med izvozi, ki se kopičijo, redno delajte red in kopijo pošljite drugam. Shranjeni na disku strežnika ti izvozi vstopijo tudi v njegove nočne varnostne kopije.

Obnova

  1. Ustavite Umami, zbirka pa naj teče naprej: docker compose stop umami.
  2. Izvoz obnovite v zbirko, z zamenjavo obstoječih objektov.
  3. Znova zaženite Umami, nato preverite, da so vaša spletišča in njihova analitika na mestu.
Terminal
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

To vajo občasno ponovite, na kopiji: tako preverite, da varnostna kopija deluje.

Posodobitve

Dokumentacija navaja dva ukaza, ki ju zaženete v mapi datoteke compose.yaml. Zbirka ostane v svojem nosilcu:

Terminal
docker compose pull
docker compose up --force-recreate -d

Ob ponovnem zagonu vsebnik sam izvede migracije sheme. Različica 3.4.0 s 17. septembra 2026 jih je prinesla dve, za opombe in ključe API; različica 3.4.1 s 23. oktobra 2026 ne prinaša nobene. Po veliki nadgradnji, kot je prehod na različico 3, dokumentacija predlaga, da v PostgreSQL zaženete ANALYZE, da nadzorne plošče znova dobijo svojo hitrost:

Terminal
docker compose exec db psql -U umami -d umami -c "ANALYZE;"

Kdo kaj dela na Managed VPS

Samostojno gostovanje poleg aplikacije zahteva tudi vzdrževanje strežnika. Na Managed VPS naše ekipe prevzamejo strežnik in proaktivno spremljajo vašo instanco; Umami ostaja vaša programska oprema, z vašimi nastavitvami in podatki.

TemaNaše ekipeVi
StrežnikPosodobitve sistema in varnosti, vključno s posegi na strežnikuTrenutek, ki ustreza vaši dejavnosti
NadzorStrežnik pod nadzorom 24 ur na dan, 7 dni v tednu, s posegom brez čakanja na vaš klicBranje dnevnikov vaše instance
UmamiProaktivno spremljanje: napake, upočasnitve in prostor na disku, s priporočenim popravkomNamestitev, posodobitve in nastavitve, ki jih uvedete vi ali vaš AI pomočnik
Spletišča in analitikaStrežnik, ki jih nosi, pod nadzorom in varnostno kopiranRačuni, spremljana spletišča, sledilni skript in trajanje hrambe podatkov
Varnostne kopijeVsako noč, šifrirane in shranjene zunaj stroja; obnova je vključenaIzvozi, značilni za Umami, in zahteva za obnovo, ko jo potrebujete
SelitevSelitev vašega sedanjega strežnika, brezplačnoTrenutek preklopa

Če želite, da naše ekipe posežejo v samo aplikacijo, se ta storitev zaračuna po urah ali pavšalno, z oceno stroškov, sporočeno pred posegom.

Umami na strežniku, ki ga vzdržujemo za vas

Z Managed VPS Simafri naše ekipe strežnik vaše instance Umami sproti posodabljajo, ga podnevi in ponoči nadzirajo ter posežejo brez čakanja na vaš klic; vašo instanco tudi proaktivno spremljajo in vam priporočajo koristne popravke, ki jih uvedete vi ali vaš AI pomočnik. Varnostne kopije so vsako noč šifrirane in shranjene zunaj stroja, njihova obnova je vključena, selitev vašega sedanjega strežnika pa je brezplačna.

Odkrijte Managed VPS

Pogosta vprašanja

Ali je Umami za podjetje brezplačen?

Da. Umami je pod licenco MIT: v podjetju ga lahko uporabljate, spreminjate in nadalje razširjate, ne da bi morali kupiti licenco, če ohranite njegovo obvestilo o avtorskih pravicah. Ostane le strošek strežnika, na katerem teče.

Ali Umami uporablja piškotke?

Ne. Pogosta vprašanja projekta navajajo, da spletni sledilnik Umami ne uporablja piškotkov. Ali vaše spletišče potrebuje obvestilo o piškotkih, je odvisno od drugih storitev, ki jih na njem uporabljate, in od zahtev, ki veljajo.

Ali Umami deluje z MySQL?

Od različice 3 ne: Umami podpira PostgreSQL, najmanj v različici 12.14. Instanca različice 2 na MySQL svoje podatke najprej prenese v PostgreSQL z vodnikom za selitev projekta, nato nadgradi na različico 3.

Kako namestiti Umami z Docker Compose?

Začnite z datoteko docker-compose.yml projekta, ki poganja Umami in PostgreSQL, z naključnimi skrivnostmi v datoteki .env in vrati, objavljenimi na 127.0.0.1. Zaženite docker compose up -d, nato pred aplikacijo postavite obratni posredniški strežnik s HTTPS, na poddomeni.

Kateri so privzeti prijavni podatki programa Umami?

Ob namestitvi Umami ustvari račun admin z geslom umami. Spremenite ga ob prvi prijavi, v Settings in nato Profile, in v zavihku Security vključite dvostopenjsko preverjanje pristnosti, ko je TWO_FACTOR_ENCRYPTION_KEY nastavljen.

Kako preimenovati sledilni skript Umami?

Na samostojno gostovani instanci TRACKER_SCRIPT_NAME skriptu da drugo ime kot script.js, COLLECT_API_ENDPOINT pa preimenuje končno točko za zbiranje /api/send. Nato na svojih straneh spremenite vir sledilne kode.

Kako varnostno kopirati Umami?

Zbirko PostgreSQL vsak dan izvozite s pg_dump, iz vsebnika zbirke, datoteko .env pa hranite ločeno, saj vsebuje APP_SECRET in ključ dvostopenjskega preverjanja pristnosti. Obnovite s pg_restore in obnovo redno preizkušajte.

Ali Managed VPS pokriva Umami?

Managed VPS pokriva strežnik: sistem, varnost, nadzor in varnostne kopije. Naše ekipe proaktivno spremljajo tudi vašo instanco in vam priporočajo koristne popravke, ki jih uvedete vi. Poseg v aplikacijo se zaračuna po urah ali pavšalno.

Viri in uradna dokumentacija

Stopite v stik z nami