Voordat je begint
Vier dingen. Drie ervan kun alleen jij leveren.
De machine
Section titled “De machine”Ubuntu 26.04 LTS is waarop de installer is afgestemd; alles vanaf 22.04 werkt. 2 vCPU, 4 GB RAM, minstens 20 GB schijfruimte.
3,7 GB RAM is prima — de installer regelt een swapbestand van 4 GB. Daaronder mislukken oppervlaktebuilds: een build die met signaal 137 wordt afgebroken is de doos die zonder geheugen komt te zitten. De node installeert en draait nog steeds als een oppervlaktebuild mislukt; alleen dat portaal wordt overgeslagen, en de installatie opnieuw draaien probeert het opnieuw.
Het 4 GB-profiel draait de database, auth, REST, edge-functies, de gateway, opslag en realtime. Studio, analytics, beeldproxying en de verbindingspooler staan standaard uit.
Je hoeft zelf geen Docker, Node.js of pnpm te installeren. De installatie-preflight doet dat, en stelt de firewall in om 22, 80 en 443 toe te staan.
Het domein
Section titled “Het domein”Een domein dat je zelf beheert voor de node — bijvoorbeeld node1.example.com —
en de mogelijkheid om een A-record te zetten dat naar het publieke IP-adres van
de doos wijst.
Elk weboppervlak dat je aanzet heeft ook zijn eigen A-record nodig
(admin.node1.example.com, my.node1.example.com, enzovoort). De installer
print elk record dat nodig is.
De e-mailprovider
Section titled “De e-mailprovider”Vereist om live te gaan. Eén SMTP-provider draagt alle post van de node: aanmeldlinks, bevestiging van registratie en wachtwoordherstel vanuit de aanmelddienst, en uitnodigingen, meldingen en verificatiecodes vanuit de edge-functies.
De installer vraagt om host, poort, gebruiker en wachtwoord, verifieert de configuratie tegen de live provider voordat er iets wordt geïnstalleerd, en biedt aan een testbericht te sturen.
| Provider | Host | Poort | Gebruiker | Wachtwoord |
|---|---|---|---|---|
| Resend | smtp.resend.com | 465 | resend | jouw API-sleutel |
| Postmark | smtp.postmarkapp.com | 465 | server-token | server-token |
| Eigen keuze | per provider | 465 | per provider | per provider |
Gebruik poort 465, dat is impliciete TLS. Dit is geen voorkeur. Op poort 587 voltooit de functieruntime van de node de STARTTLS-upgrade niet. Het versturen blijft hangen, loopt vast en mislukt, dus gaan uitnodigingen, meldingen en verificatiecodes niet uit.
Twee controles slagen toch, en dat maakt het lastig te vinden. De installatiecontrole gebruikt een andere mailclient en verbindt zonder problemen op 587. Aanmeldlinks en wachtwoordherstel blijven aankomen, omdat de aanmelddienst een apart programma is met zijn eigen mailclient — dus lukt het sturen van een aanmeldlink naar jezelf, de test die de checklist vraagt, op een node waarvan de applicatiemail kapot is.
Poort 25 uitgaand is bij de meeste hostingproviders geblokkeerd.
Het afzenderadres moet een geverifieerd domein zijn. De node stuurt
standaard als noreply@<home_server>, en providers weigeren elke verzending
vanaf een domein dat ze niet hebben geverifieerd voor SPF en DKIM. Dit is niet
je admin_email — dat is je eigen inlog- en contactadres, en het domein daarvan
is niet geverifieerd. Als jouw node een subdomein is op een account waar alleen
het hoofddomein geverifieerd is, zet smtp.sender_email op dat geverifieerde
hoofddomein. De testmail bij installatie vangt dit op voordat je live gaat.
Zonder e-mail is de node bijna inert. Gebruikers sluiten zich aan via
uitnodigingslinks die aan e-mail gebonden zijn, dus kan een node die geen mail
kan versturen niemand aan boord nemen. De installer zet ook elk
federatieoppervlak gedwongen uit als er geen transport is geconfigureerd, en
vertelt je dat. De enige node die legitiem zonder e-mail draait, is er een die
op registration_mode: closed staat, die helemaal geen nieuwe gebruikers
accepteert. Registraties worden nooit automatisch bevestigd op een node.
De software
Section titled “De software”tc-operator draait vanuit een complete broncodeboom. Je ontvangt het
operatordistributiearchief van Trusted Codes — een tarball met de volledige
bouwbare boom, zonder versiebeheergeschiedenis en zonder interne documenten.
Als je een inschrijvingstoken hebt gekregen, haal je het archief niet zelf met de hand op; de eenregelige installer doet dat voor je en verifieert de download tegen het gepubliceerde, ondertekende release-manifest. Zie Een node installeren.
Wat je niet configureert
Section titled “Wat je niet configureert”De federatie-vertrouwensroot — de centrale registry-URL en zijn publieke rootsleutel — zit ingebakken in de installer. Het is één waarde voor de hele mesh, identiek op elke node, en jij levert of wijzigt hem niet.
Elk sleutelgeheim per node (het JWT-geheim, de anon- en service-sleutels, het
Postgres-wachtwoord, de versleutelingssleutel, de
federatie-ondertekeningssleutel) wordt voor je gegenereerd in
/etc/trusted-codes/secrets.env, modus 0600. Je kopieert nooit met de hand een
geheim. De enige uitzondering is je SMTP-wachtwoord, dat je in operator.yaml
zet.
Een repetitie, als je die wilt
Section titled “Een repetitie, als je die wilt”Op een Mac- of Linux-werkstation met Docker kun je de hele containerstroom draaien zonder host-provisioning of TLS:
scripts/tc-operator/tc-operator install --local --config operator.yaml--local start de node op een geïsoleerd loopback-project en slaat apt, de
firewall, het swapbestand en TLS helemaal over. Breek het af met
tc-operator uninstall --local --config operator.yaml --purge.