Salta al contingut

Categoria: PaaS i contenidors

Dokploy gestionat: desplegaments amb Docker Swarm en els vostres servidors

Desplegaments des de Git o amb Docker Compose repartits entre diversos servidors, amb algú que cuida el clúster de Swarm, les còpies i les actualitzacions del panell.

On es munta
Al vostre compte, a nom vostre
Còpies
Amb restauració provada
Actualitzacions
Planificades i documentades
Llicència
Apache 2.0, excepte la seua carpeta propietària

En resum

Dokploy és un panell de desplegament de codi obert que es recolza en Docker, Docker Swarm i Traefik per a publicar aplicacions, bases de dades i projectes de Docker Compose en els vostres servidors. L'instal·lem al vostre compte, organitzem els nodes del clúster, programem còpies de bases de dades i volums que restaurem en proves, protegim el panell i el mantenim al dia.

De què ens encarreguem?

Dokploy s’instal·la amb una sola ordre i en una vesprada teniu aplicacions publicades. El que ve després és el que s’oblida: nodes que ningú no actualitza, volums sense còpia, un sol manager de Swarm i el panell obert amb una contrasenya compartida. Això és el que deixem sota control:

  • Panell

    Dokploy en el seu propi servidor, amb accés restringit, doble factor i permisos per projecte.

  • Clúster de Swarm

    Managers i workers amb quòrum, etiquetes de node i restriccions perquè cada servei caiga on toca.

  • Desplegaments

    Aplicacions des de Git, imatges i projectes de Compose amb variables ordenades i marxa enrere.

  • Còpies

    Bases de dades i volums copiats a S3 en una altra ubicació, amb restauració assajada.

  • Traefik

    Certificats que es renoven sols, dominis i capçaleres de seguretat.

  • Alertes

    Desplegaments fallits, serveis sense rèpliques sanes, disc dels nodes i certificats a punt de caducar.

Com el muntem en diversos servidors?

La instal·lació per defecte deixa el panell, Traefik i les aplicacions en la mateixa màquina. Per a producció amb més d’un servidor, ho repartim així:

  1. Servidor del panell

    Executa Dokploy i la seua base de dades interna. Xicotet i sense trànsit públic, llevat de l’accés al panell, per VPN o per IP.

  2. Managers de Swarm

    Tres nodes manager perquè el clúster mantinga el quòrum si un cau; amb un de sol, la seua caiguda deixa el clúster sense govern.

  3. Workers

    Els nodes que executen les aplicacions, amb etiquetes per a separar el que necessita disc ràpid o més memòria.

  4. Dades fora dels nodes

    Bases de dades en un node fixat o en el servei gestionat del proveïdor, i còpies a S3 en un altre compte.

Swarm reparteix rèpliques de serveis sense estat amb molta facilitat. Les bases de dades són una altra història: un volum local no viatja amb el contenidor a un altre node, així que les fixem a una màquina concreta o les traiem del clúster.

Quins problemes trobem més sovint?

  • Un únic manager: si aquesta màquina cau, els serveis continuen, però no es pot desplegar ni recol·locar res.
  • Bases de dades que salten de node: Swarm mou el contenidor i arrenca amb un volum buit en una altra màquina.
  • Compose amb ports publicats: bases de dades accessibles des d’internet perquè l’arxiu original les exposava.
  • Còpies activades sense destí extern o sense ni una restauració de prova.
  • Disc ple d’imatges i registres de contenidors en els workers.
  • Panell en la mateixa màquina que les aplicacions i amb un usuari per a tot l’equip.

Com fem les còpies i les actualitzacions?

Configurem en Dokploy un destí compatible amb S3 en un altre compte o en un altre proveïdor i programem les còpies de cada base de dades i dels volums que guarden dades. Periòdicament en restaurem una en un servei a part i comprovem que les dades hi són; el temps que tarda va a l’informe. El panell té la seua pròpia còpia, que guardem fora del servidor per a poder reconstruir-lo en una altra màquina sense tocar el que ja està publicat.

Les versions del panell les llegim abans d’aplicar-les i, quan el canvi és gran, les provem primer en un entorn d’assaig. Docker i el sistema operatiu dels nodes s’actualitzen node a node: drenar, aplicar pegats, reiniciar i tornar al clúster, perquè les rèpliques continuen servint mentrestant.

Per a qui té sentit?

  • Un equip de producte amb diverses aplicacions i API que vol desplegar amb un push sense muntar Kubernetes.
  • Una empresa que ja treballa amb Docker Compose i necessita passar d’un servidor a diversos sense refer els seus arxius.
  • Qui ix d’un PaaS de pagament i vol servidors a nom seu, amb algú que responga de les còpies i del clúster.

Si compareu amb Coolify o teniu previst eixir d’Heroku o Vercel, ho expliquem a Coolify i Dokploy gestionats. Si el nombre de serveis creix molt o necessiteu autoescalat, potser us encaixa millor Kubernetes a Hetzner.

Com protegim el panell i el clúster?

Qui entra a Dokploy pot desplegar, llegir variables d’entorn i esborrar bases de dades, així que el panell va darrere d’una VPN o amb accés per IP, amb doble factor i un usuari per persona. Els ports de gestió de Swarm només escolten en la xarxa privada, els nodes accepten SSH únicament amb clau i el tallafoc tanca a l’exterior tot el que no siga Traefik. Els secrets van en les variables del panell o en un gestor de secrets, mai en el repositori.

Com encaixen les peces
  1. GitPush, webhook o imatge
  2. DokployPanell en el seu servidor
  3. Docker SwarmNodes manager i worker
  4. TraefikHTTPS i dominis
  5. CòpiesBases de dades i volums a S3

On ho muntem?

Al vostre compte, al proveïdor que ja feu servir o al que encaixe millor. Si les dades s'han de quedar a la UE, Hetzner i OVHcloud són les opcions europees.

Proveïdors on ho muntem

  • Hetzner
  • AWS
  • Google Cloud
  • DigitalOcean
  • OVH
  • Servidor propi
ProveïdorCom ho muntemA tindre en compte
HetznerUn servidor cloud xicotet per al panell i diversos per al clúster de Swarm, units per xarxa privada. Còpies en Object Storage de Hetzner, compatible amb S3.El trànsit entre nodes de Swarm va per la xarxa privada; només Traefik queda exposat.
AWSInstàncies EC2 en una VPC per al panell i els nodes, amb còpies en un bucket de S3.Si ja feu servir RDS, les aplicacions s'hi poden connectar en lloc de connectar-se a bases de dades en contenidor.
Google CloudMàquines de Compute Engine i còpies a Cloud Storage a través del seu accés compatible amb S3.
DigitalOceanDroplets en una VPC per al panell i els nodes, amb còpies a Spaces.
OVHInstàncies de Public Cloud amb xarxa privada i còpies en Object Storage d'OVHcloud.
Servidor propiDokploy i els nodes de Swarm en els vostres servidors físics o màquines virtuals.Per a publicar a internet fem servir un proxy o un túnel al davant; no obrim els ports de gestió de Swarm.

Què inclou

  • Panell de Dokploy en un servidor propi, separat de les càrregues, al vostre compte i a nom vostre.
  • Servidors remots o nodes de Docker Swarm afegits al panell, amb etiquetes per a decidir què corre on.
  • Aplicacions desplegades des de Git, des d'una imatge o des d'un docker-compose.yml, amb variables d'entorn ordenades per entorn.
  • Traefik amb certificats HTTPS automàtics i dominis propis per a cada servei.
  • Còpies programades de bases de dades i volums a un destí compatible amb S3, restaurades en proves.
  • Còpia del mateix panell i de la seua base de dades interna, guardada fora del servidor.
  • Accés al panell restringit, doble factor i usuaris per persona amb permisos per projecte.
  • Actualitzacions del panell llegides i assajades, i servidors amb pegats, Docker al dia i disc vigilat.

Preguntes freqüents

Necessitem Docker Swarm per a fer servir Dokploy?

No. Dokploy funciona amb un únic servidor o amb diversos servidors remots governats per SSH, cadascun pel seu compte. Swarm entra quan voleu repartir rèpliques d'un mateix servei entre diversos nodes i que es recol·loquen soles si un cau. Ho proposem quan la caiguda d'una màquina ja us costa diners.

Podem desplegar els nostres docker-compose.yml tal com estan?

Quasi sempre. Dokploy accepta projectes de Compose i els publica darrere de Traefik. Abans revisem els volums, les xarxes i els ports publicats, perquè el que funciona en un portàtil de vegades exposa una base de dades o guarda dades on no es copien.

Què copia i què no copia Dokploy per si mateix?

Programa còpies de les bases de dades que crea des del panell i de volums cap a un destí compatible amb S3. El que no garanteix és que aquestes còpies es puguen restaurar ni que cobrisquen dades que viuen fora d'aquests volums. Per això en restaurem una de tant en tant en un entorn a part i n'anotem el resultat.

Dokploy o Coolify?

Tots dos resolen el mateix amb enfocaments diferents. La comparació detallada, i com eixir d'Heroku o Vercel, és a la pàgina de Coolify i Dokploy. Si ja feu servir Dokploy, el normal és quedar-vos-hi i ordenar-lo.

Expliqueu-nos el vostre cas

En una trucada gratuïta de 20 minuts veiem on sou i per on començar. Sense compromís.

Reservar una trucada de 20 minuts

Documentació oficial consultada

Les dades tècniques d'aquesta pàgina es basen en:

Revisat el

WhatsApp