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.
Autors: Simon Vasconcelos Lee
Publicēts 2026. gada 15. novembrīLasīšanas laiks: 12 minūtes
APP_SECRET un TWO_FACTOR_ENCRYPTION_KEY nejauši, padariet Umami pieejamu caur HTTPS savā apakšdomēnā un uzreiz nomainiet konta admin paroli.<head>: izsekotājs neizmanto sīkdatnes.pg_dump, glabājiet failu .env drošā vietā un atjauniniet ar docker compose pull.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.
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.
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ājums | Ko saka projekts | Avots |
|---|---|---|
| Sīkdatnes | 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 izmantotajiem pakalpojumiem un piemērojamām prasībām | FAQ |
| Vāktie dati | Lapu skatījumi, novirzītāju adreses, pārlūkprogrammas, operētājsistēmas, ierīču veidi un aptuvena atrašanās vieta | FAQ |
| IP adrese | Sesiju 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ēnesi | Shēma un kods, 3.4.1 versija |
| Glabāšana | Mitinot savā serverī, dati tiek glabāti, līdz jūs tos izdzēšat | FAQ |
| VDAR | Umami ir veidots, domājot par privātumu, un atbilstība ir atkarīga no tā, kā jūs to konfigurējat un izmantojat | FAQ |
| Jūsu sūtītie dati | Par apmeklētāja identifikatoru vai notikumu īpašībām, ko izvēlaties sūtīt, atbildat jūs | Ievads |
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ā.
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:
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.
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:
docker compose up -d
curl -s http://127.0.0.1:3000/api/heartbeat
DATABASE_URL: vienīgais obligātais mainīgais, datubāzes savienojuma virkne. Heksadecimālā parole tajā tiek ievietota, kā ir; parole ar speciālajām rakstzīmēm būtu jāraksta procentu kodējumā.APP_SECRET: nejauša virkne, kas aizsargā autentifikācijas marķierus, katrai instalācijai sava. 3.4.1 versijas kodā tā piedalās arī sesiju identifikatoru aprēķinā: nemainiet to.TWO_FACTOR_ENCRYPTION_KEY: 64 heksadecimālas rakstzīmes, kas šifrē divfaktoru autentifikācijas noslēpumus. Bez tās neviens nevar ieslēgt divfaktoru autentifikāciju.admin. Pārbaude /api/heartbeat atbild {"ok":true}, tiklīdz Umami ir gatavs.latest seko jaunākajai publicētajai versijai. Projekta reģistrs publicē arī versiju birkas, piemēram, 3.4.1, lai fiksētu to, ko darbināt.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.
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.
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.
stats.example.com {
reverse_proxy 127.0.0.1:3000
}
Šis bloks seko Umami dokumentācijas Nginx piemēram un klausās uz porta 80, lai Certbot varētu ieslēgt HTTPS:
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:
sudo certbot --nginx
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ē.
admin un umami.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.
<head> un pēc tam apmeklējiet savu vietni: dati uzreiz parādās panelī.<script defer src="https://stats.example.com/script.js" data-website-id="your-website-id"></script>
next/script, nevis ar vienkāršu tagu <script>.data-domains ierobežo izsekošanu ar jūsu produkcijas domēniem, tā jūsu testa vides nenonāk statistikā.localStorage.setItem('umami.disabled', 1).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.
TRACKER_SCRIPT_NAME: "stats.js"
COLLECT_API_ENDPOINT: "/api/collect"
Š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īgais | Ko tas dara | Vērtība |
|---|---|---|
DISABLE_TELEMETRY | Izslēdz anonīmo telemetriju, ko Umami sūta projektam lietojumprogrammas uzlabošanai | 1 |
PRIVATE_MODE | Izslēdz visus ārējos tīkla izsaukumus, tostarp vietņu ikonas, ko pēc noklusējuma piedāvā DuckDuckGo | 1 |
DISABLE_UPDATES | Izslēdz jaunu versiju pārbaudi | 1 |
IGNORE_IP | Izslēdz no datu vākšanas IP adreses un CIDR diapazonus, piemēram, jūsu biroju adreses | Saraksts, atdalīts ar komatiem |
SALT_ROTATION | Nosaka, cik bieži mainās sāls, uz kuras balstās sesiju identifikatori | Pēc noklusējuma month |
REDIS_URL | Pievieno Redis kešatmiņu, ko dokumentācija iesaka vietnēm ar lielu apmeklējumu vai vairākām instancēm | Jūsu Redis adrese |
MCP_ENABLED | Atver 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 keys | 1 |
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:
| Elements | Ko tas glabā | Vai kopēt |
|---|---|---|
| PostgreSQL datubāze | Kontus, vietnes, komandas, pārskatus un visu analītiku | Obligāti, ar pg_dump |
.env | Datubāzes paroli, APP_SECRET un divfaktoru autentifikācijas atslēgu | Obligāti, šifrētu |
compose.yaml | Jūsu instances konfigurāciju | Ieteicams |
pg_dump izveido konsekventu eksportu, kamēr datubāze tiek izmantota. Pielāgotais formāts -Fc ir saspiests, un to atjauno ar pg_restore:
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.
docker compose stop umami.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.
Dokumentācija dod divas komandas, kas jāpalaiž no mapes ar compose.yaml. Datubāze paliek savā sējumā:
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:
docker compose exec db psql -U umami -d umami -c "ANALYZE;"
postgres:15-alpine. Pāreja uz jaunu PostgreSQL lielo versiju prasa eksportu un atjaunošanu vai pg_upgrade.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.
| Temats | Mūsu komandas | Jūs |
|---|---|---|
| Serveris | Sistēmas un drošības atjauninājumi, ieskaitot iejaukšanos serverī | Brīdis, kas der jūsu darbam |
| Uzraudzība | Serveris tiek uzraudzīts 24/7, iejaucoties, negaidot jūsu zvanu | Jūsu instances žurnālu lasīšana |
| Umami | Proaktīva sekošana: kļūdas, palēninājumi un diska vieta tiek pamanīti, labojums tiek ieteikts | Tā uzstādīšana, atjauninājumi un iestatījumi, ko ieviešat jūs vai jūsu MI asistents |
| Vietnes un analītika | Serveris, kas tās nes, uzraudzīts un ar rezerves kopijām | Konti, izsekotās vietnes, izsekošanas skripts un datu glabāšanas ilgums |
| Rezerves kopijas | Katru nakti, šifrētas un glabātas ārpus mašīnas; atjaunošana iekļauta | Umami raksturīgie eksporti un atjaunošanas pieprasījums, kad tas vajadzīgs |
| Migrācija | Jūsu pašreizējā servera migrācija, bez maksas | Pā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.
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.
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.
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.
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.
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ā.
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.
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.
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.
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.
Simafri
Parunāsim par jūsu ieceri
Pasakiet mums dažos vārdos, kas jums vajadzīgs: mēs jums ātri atbildam.
Paldies! Jūsu pieprasījums ir nosūtīts. Drīzumā ar jums sazināsimies.
Labāk e-pastu? Rakstiet mums uz support@simafri.com.