Project proposal: Self-hosted PaaS Cluster with Dokploy - #2997
Conversation
|
Readme is not correctly formatted Got: ['Project Proposal', 'Title', 'Names and KTH ID', 'Deadline', 'Category', 'Description'] |
ericcornelissen
left a comment
There was a problem hiding this comment.
The proposal looks good already but please clearly state how your project will covered the second requirement (Automated deployment or delivery, Students should use a CD pipeline).
Dokploy's continuous deployment features are quite rich, with built-in support for Git webhook integrations, Docker Compose or even an image registry. We will decide which options fit our needs best as we implement the project, but we will certainly have CD as a core part of our setup. |
|
That sounds good @sammosios, please add it to the proposal itself. |
Assignment Proposal
Title
Self-hosted PaaS Cluster with Dokploy
Names and KTH ID
Deadline
Oct 11th
Category
Project
Description
We will bootstrap a small cluster of VMs (using Multipass) and set up Dokploy in cluster mode as a self-hosted PaaS. One node acts as the Dokploy leader/control-plane, and we will configure automatic registration of worker nodes so that new VMs can join the cluster and scale it horizontally without manual setup.
Our Infrastructure as Code will mostly take the form of scripts driving the Dokploy CLI (VM provisioning, cluster bootstrap, worker registration, and service deployment), and we will use ephemeral testing environments to validate that the provisioning scripts are reproducible from a clean state.
Dokploy's continuous deployment features are quite rich, with built-in support for Git webhook integrations, Docker Compose or an image registry. We will decide which options fit our needs best as we move forward with the implementation and depending on the service type.
On top of the cluster we will stand up a set of core services: self-hosted CI runners, example web applications, databases, a secrets vault for credential management, and static analysis via Trivy for scanning images and dependencies for vulnerabilities. Time permitting, we would also like to add object storage, message queues, and observability (metrics/logs/tracing) as nice-to-have extensions.
Relevance
This project is directly relevant to infrastructure as code, cloud-native tooling, and CI/CD. It demonstrates how a self-hosted PaaS can be provisioned and scaled from scratch through scripted automation rather than a managed cloud provider, and it touches on horizontal scaling, secrets management, vulnerability scanning, and CI infrastructure — core building blocks of a real DevOps platform. It also highlights the tradeoffs of a CLI-scripting-based approach to IaC compared to fully declarative tools.