---
title: "Trilium Notes: Docker Compose i hosting jednym kliknięciem"
description: "Trilium Notes to osobista baza wiedzy open source na duże zbiory notatek: drzewo, synchronizacja, szyfrowanie. Hostuj ją u siebie jednym kliknięciem."
---

[← Wszystkie szablony](https://pethost.dev/pl/templates/) · [Notatki i wiki](https://pethost.dev/pl/templates/notes/)

# Wdróż Trilium Notes jednym kliknięciem

Hierarchiczna baza wiedzy na duże zbiory osobistych notatek

Alternatywa dla Notion, Evernote i Obsidian, hostowana u siebie.

[Wdróż na Pethost](https://console.pethost.dev/?template=trilium)

## Czym jest Trilium Notes?

Trilium Notes to darmowa aplikacja open source do notatek, stworzona z myślą o dużych osobistych bazach wiedzy, alternatywa dla Notion, Evernote i Obsidiana dla tych, którzy chcą mieć notatki na własnym serwerze. Notatki tworzą drzewo o dowolnej głębokości, a jedna notatka może być w kilku miejscach naraz. Poza tekstem sformatowanym z tabelami, obrazami i wzorami matematycznymi notatka może być kodem, kanwą Excalidraw, mapą myśli, mapą geograficzną albo mapą relacji, a atrybuty i skrypty zmieniają notatki w małe narzędzia. Każda notatka ma historię wersji, a wyszukiwanie pełnotekstowe pozwala ją znowu znaleźć.

Serwer to niemal ta sama aplikacja w przeglądarce, z widokiem przystosowanym do dotyku na telefony, a aplikacje desktopowe na Windows, macOS i Linuksa synchronizują się z nim. Chronione notatki są szyfrowane twoim hasłem, notatkę można udostępnić publicznie przez link, a web clipper zapisuje strony z przeglądarki. Ten szablon tworzy nową, pustą bazę wiedzy z podanym hasłem, zanim Trilium odpowie komukolwiek. Haczyk: Trilium jest dla jednej osoby, z jednym hasłem i bez kont dla innych, i nie ma oficjalnej aplikacji mobilnej.

## Hosting Trilium Notes na Pethost

1. Logujesz się do Pethost kluczem dostępu, przez GitHub albo Google. Nie masz jeszcze maszyny? Wybierasz plan, a link czeka, aż będzie gotowa.
2. Okno „Nowy projekt” otwiera się na aplikacji Trilium Notes. Wypełniasz to, o co prosi, i klikasz „Utwórz projekt”: **Hasło**.
3. Za minutę czy dwie aplikacja Trilium Notes działa pod własnym adresem z HTTPS. Jej sekrety są tworzone losowo, a dane trafiają do nocnego backupu.
4. To projekt jak każdy inny: ty albo twój agent możecie go zmienić, cofnąć do wcześniejszej wersji albo przywrócić.

## Pytania o Trilium Notes

**Czy Trilium Notes jest darmowy?**

Tak. Trilium to open source na licencji AGPL-3.0 bez płatnej wersji: serwer, aplikacje desktopowe i synchronizacja są w całości darmowe.

**Czym jest TriliumNext?**

To projekt społeczności, który przejął rozwój Trilium. Pierwotny autor Trilium, Zadam, przekazał mu repozytorium Trilium, a projekt znów wydaje aplikację pod nazwą Trilium Notes. Baza danych z oryginalnego Trilium otwiera się w nim bez dodatkowych kroków.

**Trilium czy Obsidian: co wybrać?**

Obsidian trzyma pliki Markdown w katalogu na każdym urządzeniu, ma zamknięty kod i sprzedaje synchronizację. Trilium trzyma notatki w bazie danych na twoim serwerze, jest open source i za darmo synchronizuje z nim aplikacje desktopowe. Mocne strony Obsidiana to pluginy i zwykłe pliki, a Trilium – drzewo notatek, klonowanie i wiele typów notatek.

**Czy jest aplikacja Trilium na telefon?**

Oficjalnej nie ma. Serwer ma interfejs mobilny dla przeglądarek w telefonach, są też aplikacje społeczności: TriliumDroid i Pocket Trilium na Androida oraz Trinote na iOS.

**Czy mogę zaimportować notatki z Evernote albo plików Markdown?**

Tak. Trilium importuje eksporty ENEX z Evernote i pliki Markdown, a eksportuje notatki jako Markdown albo HTML, więc twoje notatki wyjdą z niego równie łatwo, jak do niego trafiły.

**Ile pamięci i miejsca na dysku potrzebuje Trilium Notes?**

Trilium ma małe wymagania: około 100 MB pamięci; jego baza danych rośnie razem z notatkami i załącznikami, a obok niej leżą jego własne backupy: dzienne, tygodniowe i miesięczne. Na Pethost wystarczy mu plan Starter, z miejscem na inne aplikacje obok.

## Trilium Notes: plik Docker Compose

Szablon to ten compose.yaml i zmienne zapisywane do .env projektu przy jego tworzeniu. Pethost uruchamia plik dokładnie tak, jak jest napisany.

**Kontenery:** trilium (triliumnext/trilium:v0.106.1).

**Wolumeny, w nocnym backupie:** data.

```
services:
  trilium:
    image: triliumnext/trilium:v0.106.1
    restart: unless-stopped
    environment:
      ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      # Requests come through the proxy: the client's own address is the one it forwards, so that
      # a stranger's wrong passwords do not lock everyone out of signing in.
      TRILIUM_NETWORK_TRUSTEDREVERSEPROXY: uniquelocal
    # A new Trilium offers its setup to whoever opens it first, then asks them for the password.
    # So while it has no password, it runs on port 8081, which nobody reaches: a new knowledge base
    # is made there with the password given, and only then does Trilium answer on 8080.
    command:
      - sh
      - -c
      - |
        set -e
        if ! node -e '
          const { DatabaseSync } = require("node:sqlite");
          const db = new DatabaseSync(process.env.TRILIUM_DATA_DIR + "/document.db", { readOnly: true });
          const row = db.prepare("select value from options where name = ?").get("passwordVerificationHash");
          process.exit(row?.value ? 0 : 1);
        ' 2>/dev/null; then
          TRILIUM_PORT=8081 node ./main.mjs &
          setup=$$!
          node -e '
            const base = "http://127.0.0.1:8081";
            const setUp = async () => {
              const status = await fetch(base + "/api/setup/status").then((r) => r.json());
              if (!status.isInitialized) {
                const made = await fetch(base + "/api/setup/new-document?skipDemoDb", {
                  method: "POST",
                  headers: { "content-type": "application/json" },
                  body: JSON.stringify({ locale: "en" })
                });
                if (!made.ok) throw new Error("new-document: " + made.status + " " + (await made.text()));
              }
              const password = process.env.ADMIN_PASSWORD;
              const set = await fetch(base + "/set-password", {
                method: "POST",
                body: new URLSearchParams({ password1: password, password2: password }),
                redirect: "manual"
              });
              if (set.status !== 302) throw new Error("set-password: " + set.status + " " + (await set.text()));
            };
            (async () => {
              let failure;
              for (let i = 0; i < 180; i++) {
                try {
                  return await setUp();
                } catch (error) {
                  failure = error;
                  await new Promise((done) => setTimeout(done, 1000));
                }
              }
              console.error(failure);
              process.exit(1);
            })();
          '
          kill $$setup
          wait $$setup || true
        fi
        chown -R node:node /home/node
        exec su -c "node ./main.mjs" node
    volumes:
      - data:/home/node/trilium-data

volumes:
  data:
```

[compose.yaml](https://pethost.dev/templates/trilium/compose.yaml)[Zobacz na GitHubie](https://github.com/pethost-dev/templates/tree/main/trilium)

## [Więcej w kategorii Notatki i wiki](https://pethost.dev/pl/templates/notes/)

- [**Memos**Krótkie notatki Markdown na prywatnej osi czasu](https://pethost.dev/pl/templates/memos/)
- [**HedgeDoc**Notatki w Markdownie, które piszesz razem z innymi w czasie rzeczywistym](https://pethost.dev/pl/templates/hedgedoc/)
- [**Obsidian LiveSync**Serwer CouchDB, który synchronizuje twoje sejfy Obsidiana przez Self-hosted LiveSync](https://pethost.dev/pl/templates/obsidian-livesync/)
- [**BookStack**Wiki uporządkowane w półki, książki, rozdziały i strony](https://pethost.dev/pl/templates/bookstack/)
- [**Docmost**Wiki i dokumentacja do wspólnej pracy, z przestrzeniami, edycją w czasie rzeczywistym i diagramami](https://pethost.dev/pl/templates/docmost/)
- [**Etherpad**Dokumenty edytowane wspólnie w czasie rzeczywistym: każdy autor w swoim kolorze, z czatem, historią i wtyczkami](https://pethost.dev/pl/templates/etherpad/)

Pethost · Stephan Gomer · NIP 1133096755

Pethost

- [Szablony](https://pethost.dev/pl/templates/)
- [O nas](https://pethost.dev/about/)
- [Dokumentacja](https://pethost.dev/docs/)
- [Blog](https://pethost.dev/pl/blog/)
- [API](https://pethost.dev/docs/api/)
- [CLI](https://pethost.dev/docs/cli/)
- [Plugin](https://github.com/pethost-dev/plugin)
- [Regulamin](https://pethost.dev/terms/)
- [Prywatność](https://pethost.dev/privacy/)
- [Zwroty](https://pethost.dev/refunds/)
- [support@pethost.dev](mailto:support@pethost.dev)

Bazy danych

- [Postgres](https://pethost.dev/pl/postgres/)

Porównania

- [Coolify vs Dokploy vs CapRover vs Dokku](https://pethost.dev/pl/blog/coolify-vs-dokploy-vs-caprover-vs-dokku/)
- [Coolify Cloud vs Dokploy Cloud](https://pethost.dev/pl/blog/coolify-cloud-vs-dokploy-cloud/)
- [Cennik Railway vs Render vs Fly.io](https://pethost.dev/pl/blog/railway-vs-render-vs-fly-io-pricing/)
- [Zarządzany hosting Docker Compose](https://pethost.dev/pl/blog/managed-docker-compose-hosting/)

Alternatywy

- [Alternatywy dla Railway](https://pethost.dev/pl/blog/railway-alternatives/)
- [Alternatywy dla Heroku](https://pethost.dev/pl/blog/heroku-alternatives/)
- [Alternatywy dla Dokploy](https://pethost.dev/pl/blog/dokploy-alternatives/)
- [Alternatywy dla Coolify](https://pethost.dev/pl/blog/coolify-alternatives/)
- [Alternatywy dla Render](https://pethost.dev/pl/blog/render-alternatives/)
- [Alternatywy dla Sliplane](https://pethost.dev/pl/blog/sliplane-alternatives/)
