DocuSeal zelf hosten in 2026: ondertekeningslinks, SMTP en auditgegevens
Host DocuSeal zelf met de juiste poorten, persistente opslag, HTTPS, secrets, back-ups en upgradecontroles. Leer hoe je voorkomt dat e-maillinks naar localhost verwijzen.
De meeste installatie-instructies voor DocuSeal stoppen zodra de eerste pagina is geladen. Dat is te vroeg: e-maillinks verwijzen naar localhost of proxyheaders zorgen ervoor dat secure cookies niet werken. Een nuttige productietest is veeleisender — upload een template, plaats velden, verstuur een ondertekeningsverzoek, rond het af en download zowel het ondertekende document als de auditgegevens.
De rol van DocuSeal is eenvoudig: documenten ondertekenen met een controleerbaar ondertekeningstraject. De operationele scope omvat meer dan alleen het webproces. Daarom moeten de dependency, de opgeslagen state en de publieke route expliciet worden vastgelegd voordat er echte gegevens binnenkomen.
De productieopzet van DocuSeal
Trek drie grenzen rond DocuSeal: ingress naar poort 3000, persistente state en ondersteunende vereisten. De container is vervangbaar, maar voor de andere twee moeten expliciet verantwoordelijken worden aangewezen. Het netwerkcontract voor DocuSeal bestaat uit SMTP plus een persistente database en bestandsopslag. Houd private endpoints op interne DNS, sta alleen noodzakelijke uitgaande verbindingen toe en geef DocuSeal een servicecredential met beperkte scope.
Het diagram is compleet wanneer een schone client een template kan uploaden, velden kan plaatsen, een ondertekeningsverzoek kan versturen, dit kan afronden en zowel het ondertekende document als de auditgegevens kan downloaden. Leg timing- en resourcegegevens vast voor documentopslag, PDF-verwerking, mail delivery, gelijktijdige ondertekenaars en databasetransacties. Als de transactie mislukt, laat de eerste grens die zich niet gedraagt zoals gedocumenteerd zien of je routing, lokale capaciteit of een ondersteunende service moet onderzoeken.
Ontwerp het DocuSeal-herstel vóór de lancering
Bescherm de state van DocuSeal voordat je de container optimaliseert. De vereiste set bestaat uit de database, ondertekende bestanden, templates en auditgebeurtenissen. Mount /data vóór de bootstrap, schrijf onschadelijke voorbeeldgegevens en vervang de container om te bewijzen dat dit pad daadwerkelijk persistent is. Als meerdere stores met elkaar moeten overeenkomen, documenteer dan de volgorde waarin writes worden gepauzeerd en back-ups worden gemaakt.
Bewaar kopieën buiten de deploymentserver en versleutel materiaal dat credentials of private content bevat. Herstel is geslaagd wanneer templates, submissions, ondertekende bestanden en auditgebeurtenissen terugkomen en een afgeronde submission verifieerbaar blijft. Het verschil tussen een persistente mount en een onafhankelijke kopie wordt uitgelegd in persistente opslag en snapshots.
Sluit tijdelijke setup-toegang af
Maak een threat model van de actie die DocuSeal uitvoert, niet alleen van het loginformulier. De grootste fout met een hoog risico is hier het wijzigen van SECRET_KEY_BASE of aannemen dat een bestandskopie een volledige auditback-up is. Implementeer deze grens: beperk templatebeheer, bescherm signerdata en stel de externe HTTPS-host in voordat je links verstuurt.
Genereer SECRET_KEY_BASE één keer, houd deze buiten Git en bewaar hem samen met het recovery-manifest, omdat wijzigingen encrypted of signed application state ongeldig kunnen maken. Los een permissiefout niet op door de container als root uit te voeren of de host breed te mounten. Resource limits maken ook deel uit van het securityontwerp wanneer gebruikers documentopslag, PDF-verwerking, mail delivery, gelijktijdige ondertekenaars en databasetransacties kunnen activeren.
Leg een bekende goede DocuSeal-deployment vast
Maak van de DocuSeal-smoketest een herhaalbaar releasecommando of een korte runbook. De output moet dit resultaat aantonen: upload een template, plaats velden, verstuur een ondertekeningsverzoek, rond het af en download zowel het ondertekende document als de auditgegevens. Leg de applicatieversie, container digest, route-hostname en identifier van de testgegevens samen met het resultaat vast.
Voer dezelfde controle uit na een reguliere containerwissel en na het elders herstellen van de database, ondertekende bestanden, templates en auditgebeurtenissen. Het herstel is geslaagd wanneer templates, submissions, ondertekende bestanden en auditgebeurtenissen terugkomen en een afgeronde submission verifieerbaar blijft. Vergelijk timing en verbruik voor documentopslag, PDF-verwerking, mail delivery, gelijktijdige ondertekenaars en databasetransacties; een grote verandering verdient onderzoek, ook wanneer de laatste actie nog steeds slaagt.
Voer daarna een veilige fouttest uit: ontzeg de testidentiteit tijdelijk de toegang tot SMTP plus de persistente database en bestandsopslag. Controleer of DocuSeal de fout zichtbaar maakt en zonder destructieve handmatige wijzigingen terugkeert naar de normale toestand. Bewaar alleen het noodzakelijke, geredigeerde logfragment. Deze vierdelige gate dekt startup, persistentie, herstel en foutafhandeling.
Een Docker-baseline voor DocuSeal
Start DocuSeal op een manier die de route privé houdt totdat de bootstrap is voltooid.
docker run -d \
--name docuseal \
--restart unless-stopped \
-p 127.0.0.1:3000:3000 \
-v docuseal-data:/data \
-e SECRET_KEY_BASE=replace-with-a-long-random-value \
docuseal/docuseal:latest
Als het proces blijft loopen, vergelijk dan de verwachte user van de image met de eigenaar van elk gemount pad. Als het proces actief blijft, test je poort 3000 lokaal en ga je vervolgens direct door naar de workflow: upload een template, plaats velden, verstuur een ondertekeningsverzoek, rond het af en download zowel het ondertekende document als de auditgegevens. Pin de imageversie pas nadat deze end-to-endcontrole slaagt en leg de exacte configuratie naast de service vast.
Voorkom dat een succesvolle proxy applicatiefouten verbergt
Behandel de externe DocuSeal-URL als configuratie die redeployments overleeft. Stel eerst de applicatiehost en HTTPS-instellingen in voordat je ondertekeningslinks verstuurt; routeer de hostname daarna naar poort 3000 met de oorspronkelijke host en het oorspronkelijke scheme intact.
De checklist voor deploymentbereikbaarheid kan aantonen dat requests de container binnenkomen. Daarna moet de bekende fout — e-maillinks verwijzen naar localhost of proxyheaders zorgen ervoor dat secure cookies niet werken — in DocuSeal, de state ervan of de workload worden onderzocht, en niet in de certificaatautomatisering.
Repeteer de risicovolle DocuSeal-wijziging
Een groene container is noodzakelijk, maar niet voldoende. De service-level indicator is het succesvol afronden van “upload een template, plaats velden, verstuur een ondertekeningsverzoek, rond het af en download zowel het ondertekende document als de auditgegevens”, terwijl de waarschijnlijke druksignalen documentopslag, PDF-verwerking, mail delivery, gelijktijdige ondertekenaars en databasetransacties zijn.
Change control is belangrijk omdat databasemigraties en de continuïteit van SECRET_KEY_BASE moeten worden getest: alleen ondertekende bestanden kunnen het audittraject niet reconstrueren. Bewaar de oude image, test migraties op een kopie van de state en documenteer of rollback wordt ondersteund nadat het schema is gewijzigd. Als e-maillinks naar localhost verwijzen of proxyheaders ervoor zorgen dat secure cookies niet werken, diagnoseer dan de eerste grens die afwijkt van de werkende omgeving.
Koppel DocuSeal aan de lifecycle van Dockup
De platformlaag voor DocuSeal bestaat uit poort 3000, ingress, TLS, runtimeconfiguratie, opslag en bereikbaarheid van dependencies. Dockup kan deze onderdelen reproduceren voor de eigen infrastructuur of voor een server die de klant koppelt.
Daarna voltooit de operator de productlaag: stel de applicatiehost en HTTPS-instellingen in voordat je ondertekeningslinks verstuurt; handhaaf deze toegangsregel — beperk templatebeheer, bescherm signerdata en stel de externe HTTPS-host in voordat je links verstuurt — en voer “upload een template, plaats velden, verstuur een ondertekeningsverzoek, rond het af en download zowel het ondertekende document als de auditgegevens” uit. Door deze test samen met de deployment vast te leggen, voorkom je dat geautomatiseerde provisioning wordt verward met applicatiereedheid.
Veelgestelde vragen
Wat heeft DocuSeal nodig voor een productiedeployment?
Routeer de DocuSeal-container via poort 3000 door één HTTPS-origin. De vereiste ondersteunende netwerkvoorziening is SMTP plus een persistente database en bestandsopslag. Beschouw DocuSeal pas als klaar wanneer je een template kunt uploaden, velden kunt plaatsen, een ondertekeningsverzoek kunt versturen, dit kunt afronden en zowel het ondertekende document als de auditgegevens kunt downloaden.
Welke DocuSeal-gegevens horen in een back-up?
Maak /data persistent en neem de database, ondertekende bestanden, templates en auditgebeurtenissen op in hetzelfde recovery-manifest. Een schone DocuSeal-restore is pas geslaagd wanneer templates, submissions, ondertekende bestanden en auditgebeurtenissen terugkomen en een afgeronde submission verifieerbaar blijft.
Heeft DocuSeal HTTPS nodig achter een reverse proxy?
Gebruik HTTPS voor de publieke DocuSeal-origin en houd poort 3000 op de interne route. Pas de DocuSeal-instelling correct toe: stel de applicatiehost en HTTPS-instellingen in voordat je ondertekeningslinks verstuurt. Voor DocuSeal beschermt HTTPS credentials of user content tijdens transport en zorgt het ervoor dat origingevoelig gedrag van clients consistent blijft.
Hoe moet een DocuSeal-upgrade worden getest?
Herstel de huidige DocuSeal-state in een geïsoleerde deployment, pas de kandidaatversie toe en herhaal de acceptatietransactie. Let hier extra op, omdat databasemigraties en de continuïteit van SECRET_KEY_BASE moeten worden getest: alleen ondertekende bestanden kunnen het audittraject niet reconstrueren. Bewaar de vorige DocuSeal-image totdat de grenzen voor datamigratie en rollback duidelijk zijn.
