From d78591924d2dd1dd879f2e222a44ceb80bbb9951 Mon Sep 17 00:00:00 2001 From: bidi47 Date: Fri, 2 Oct 2026 17:13:54 +0300 Subject: [PATCH 1/3] updated wsl2 page - comparison table Signed-off-by: bidi47 --- public/wsl2.md | 26 ++++++++-------- src/Page/templates/page/wsl2.html.twig | 42 ++++++++++++++++++-------- 2 files changed, 43 insertions(+), 25 deletions(-) diff --git a/public/wsl2.md b/public/wsl2.md index 860c4b6..ab9f5e0 100644 --- a/public/wsl2.md +++ b/public/wsl2.md @@ -27,18 +27,20 @@ Terminal -> WSL 2 -> AlmaLinux -> Ansible -> Ready. ## Comparison with Popular Stacks -Here is a direct comparison between WSL2, XAMPP, Laragon, DDEV, and Docker to help you choose the best development environment for your workflow. - -| Feature | WSL2 | XAMPP | Laragon | DDEV | Docker | -|---------------------------|------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------| -| **Primary Use Case** | Running a real Linux environment on Windows via a managed VM. | Quick all-in-one Apache/MariaDB/PHP/Perl stack for local development. | Fast, portable PHP/Node development stack on Windows. | Per-project PHP/CMS (and Node.js) development environments built on Docker. | General-purpose containerization for any tech stack. | -| **Core Architecture** | Real Linux kernel in a lightweight utility VM; distros run as isolated containers inside it. | Native executables run as host processes (optionally as services). | Portable native Windows binaries; doesn't use Windows Services. | Orchestration layer that generates and runs Docker containers per project, plus a shared router. | Containers sharing the host kernel on Linux; on Windows/macOS, Docker Desktop runs the engine inside a Linux VM (WSL2/Hyper-V or Apple Virtualization). | -| **Depends On** | Windows virtualization support. | Nothing. | Nothing. | A Docker provider (Docker CE, Docker Desktop, OrbStack, Rancher, etc.); on Windows, usually WSL2. | Native on Linux; WSL2 or Hyper-V on Windows; a VM on macOS. | -| **OS Support** | Windows 10 (1903+, build 18362+), Windows 11, Windows Server. | Windows and Linux (PHP up to 8.2.12); macOS build lags (PHP up to 8.2.4); XAMPP-VM unsupported on Apple Silicon. | Windows only. | macOS, Windows (WSL2 or traditional), Linux, GitHub Codespaces. | Windows, macOS, Linux. | -| **Resource Usage** | Low to Medium (small footprint at idle; memory grows dynamically, capped by default at a share of host RAM). | Low (runs directly on host processes). | Very Low (lightweight, no background services). | Medium to High (Docker overhead plus several containers per project; varies by provider). | Low on native Linux; Medium to High with Docker Desktop's VM. | -| **Environment Isolation** | Partial (separate Linux filesystem and kernel, but deliberately integrated with Windows files, networking, and executables). | None (shared global install, ports, and PHP version). | Self-contained install, no per-project isolation (projects share services and the active PHP version). | Container-level per project (own web and DB containers), with a shared router on ports 80/443. | Container-level (process, filesystem, and network namespaces; shared kernel, so weaker than a VM). | -| **Production Parity** | Depends on what you install (it's a Linux OS, not a stack). | Low (Windows paths and config differ from production; vendor states it's not for production). | Low (Windows paths differ from Linux servers). | High if versions are matched (standardized Linux containers, not your production images). | High; identical only if the exact same image is deployed to production. | -| **License / Cost** | Free (part of Windows). | Free, open source. | Laragon 6 free; versions 7+ require a paid license. | Free, open source. | Docker Engine free and open source; Docker Desktop requires a paid subscription for larger businesses. | +Here is a direct comparison between the Dotkernel WSL2 stack, XAMPP, Laragon, DDEV, and Docker to help you choose the best development environment for your workflow. + +| Feature | Dotkernel WSL2 (AlmaLinux 10) | XAMPP | Laragon | DDEV | Docker | +|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------| +| **Primary Use Case** | RHEL-compatible PHP stack on Windows, provisioned by one Ansible playbook. | Quick all-in-one Apache/MariaDB/PHP/Perl stack for local development. | Fast, portable PHP/Node development stack on Windows. | Per-project PHP/CMS (and Node.js) development environments built on Docker. | General-purpose containerization for any tech stack. | +| **Core Architecture** | AlmaLinux 10 running in WSL 2's lightweight utility VM (real Linux kernel), or directly on bare metal. Services run natively inside the distro. | Native executables run as host processes (optionally as services). | Portable native Windows binaries; doesn't use Windows Services. | Orchestration layer that generates and runs Docker containers per project, plus a shared router. | Containers sharing the host kernel on Linux; on Windows/macOS, Docker Desktop runs the engine inside a Linux VM (WSL2/Hyper-V or Apple Virtualization). | +| **Depends On** | Windows virtualization support (WSL 2); nothing extra on bare AlmaLinux 10. | Nothing. | Nothing. | A Docker provider (Docker CE, Docker Desktop, OrbStack, Rancher, etc.); on Windows, usually WSL2. | Native on Linux; WSL2 or Hyper-V on Windows; a VM on macOS. | +| **OS Support** | Windows 10 1903+ (x64) or 2004+ (ARM64), Windows 11, Windows Server 2022/2025; bare-metal AlmaLinux 10. | Windows and Linux (PHP up to 8.2.12); macOS build lags (PHP up to 8.2.4). | Windows only. | macOS, Windows (WSL2 or traditional), Linux, GitHub Codespaces. | Windows, macOS, Linux. | +| **Resource Usage** | Low to Medium (small idle footprint; WSL 2 memory grows dynamically, capped by default at a share of host RAM). | Low (runs directly on host processes). | Very Low (lightweight, no background services). | Medium to High (Docker overhead plus several containers per project; varies by provider). | Low on native Linux; Medium to High with Docker Desktop's VM. | +| **Environment Isolation** | Separate Linux filesystem and kernel from Windows; projects share one Apache/PHP/MariaDB install, each with its own `*.localhost` virtualhost. | None (shared global install, ports, and PHP version). | Self-contained install, no per-project isolation (projects share services and the active PHP version). | Container-level per project (own web and DB containers), with a shared router on ports 80/443. | Container-level (process, filesystem, and network namespaces; shared kernel, so weaker than a VM). | +| **Production Parity** | High for RHEL-family servers (same `dnf`, `systemd`, and package sources as AlmaLinux/Rocky/RHEL production); not image-identical. | Low (Windows paths and config differ from production; vendor states it's not for production). | Low (Windows paths differ from Linux servers). | High if versions are matched (standardized Linux containers, not your production images). | High; identical only if the exact same image is deployed to production. | +| **PHP Version Switching** | `php81` … `php85` aliases (Remi modules). | One PHP version per install; switching means a different installer. | Switch between installed PHP versions from the menu. | Per-project `php_version` in config. | Per image / per container. | +| **Default Versions** | PHP 8.5, MariaDB 12.3 LTS, Node.js 24. | PHP 8.2.12, MariaDB 10.4.32 (Windows build). | User-selectable. | Configurable per project. | Defined by the image. | +| **License / Cost** | Free, open source (MIT). | Free, open source. | Laragon 6 free; 7+ free for non-commercial use (with license reminders), paid license for commercial use. | Free, open source. | Docker Engine free and open source; Docker Desktop requires a paid subscription for orgs with 250+ employees or $10M+ revenue. | ## The same OS family your servers run diff --git a/src/Page/templates/page/wsl2.html.twig b/src/Page/templates/page/wsl2.html.twig index 473ea2d..681ef1f 100644 --- a/src/Page/templates/page/wsl2.html.twig +++ b/src/Page/templates/page/wsl2.html.twig @@ -131,7 +131,7 @@
Comparison

Comparison with Popular Stacks

-

Here is a direct comparison between WSL2, XAMPP, Laragon, DDEV, and Docker to help you choose the best +

Here is a direct comparison between the Dotkernel WSL2 stack, XAMPP, Laragon, DDEV, and Docker to help you choose the best development environment for your workflow.

@@ -140,7 +140,7 @@ Feature - WSL2 + Dotkernel WSL2 (AlmaLinux 10) XAMPP Laragon DDEV @@ -150,7 +150,7 @@ Primary Use Case - Running a real Linux environment on Windows via a managed VM. + RHEL-compatible PHP stack on Windows, provisioned by one Ansible playbook. Quick all-in-one Apache/MariaDB/PHP/Perl stack for local development. Fast, portable PHP/Node development stack on Windows. Per-project PHP/CMS (and Node.js) development environments built on Docker. @@ -158,7 +158,7 @@ Core Architecture - Real Linux kernel in a lightweight utility VM; distros run as isolated containers inside it. + AlmaLinux 10 running in WSL 2's lightweight utility VM (real Linux kernel), or directly on bare metal. Services run natively inside the distro. Native executables run as host processes (optionally as services). Portable native Windows binaries; doesn't use Windows Services. Orchestration layer that generates and runs Docker containers per project, plus a shared router. @@ -166,7 +166,7 @@ Depends On - Windows virtualization support. + Windows virtualization support (WSL 2); nothing extra on bare AlmaLinux 10. Nothing. Nothing. A Docker provider (Docker CE, Docker Desktop, OrbStack, Rancher, etc.); on Windows, usually WSL2. @@ -174,15 +174,15 @@ OS Support - Windows 10 (1903+, build 18362+), Windows 11, Windows Server. - Windows and Linux (PHP up to 8.2.12); macOS build lags (PHP up to 8.2.4); XAMPP-VM unsupported on Apple Silicon. + Windows 10 1903+ (x64) or 2004+ (ARM64), Windows 11, Windows Server 2022/2025; bare-metal AlmaLinux 10. + Windows and Linux (PHP up to 8.2.12); macOS build lags (PHP up to 8.2.4). Windows only. macOS, Windows (WSL2 or traditional), Linux, GitHub Codespaces. Windows, macOS, Linux. Resource Usage - Low to Medium (small footprint at idle; memory grows dynamically, capped by default at a share of host RAM). + Low to Medium (small idle footprint; WSL 2 memory grows dynamically, capped by default at a share of host RAM). Low (runs directly on host processes). Very Low (lightweight, no background services). Medium to High (Docker overhead plus several containers per project; varies by provider). @@ -190,7 +190,7 @@ Environment Isolation - Partial (separate Linux filesystem and kernel, but deliberately integrated with Windows files, networking, and executables). + Separate Linux filesystem and kernel from Windows; projects share one Apache/PHP/MariaDB install, each with its own *.localhost virtualhost. None (shared global install, ports, and PHP version). Self-contained install, no per-project isolation (projects share services and the active PHP version). Container-level per project (own web and DB containers), with a shared router on ports 80/443. @@ -198,19 +198,35 @@ Production Parity - Depends on what you install (it's a Linux OS, not a stack). + High for RHEL-family servers (same dnf, systemd, and package sources as AlmaLinux/Rocky/RHEL production); not image-identical. Low (Windows paths and config differ from production; vendor states it's not for production). Low (Windows paths differ from Linux servers). High if versions are matched (standardized Linux containers, not your production images). High; identical only if the exact same image is deployed to production. + + PHP Version Switching + php81 … php85 aliases (Remi modules). + One PHP version per install; switching means a different installer. + Switch between installed PHP versions from the menu. + Per-project php_version in config. + Per image / per container. + + + Default Versions + PHP 8.5, MariaDB 12.3 LTS, Node.js 24. + PHP 8.2.12, MariaDB 10.4.32 (Windows build). + User-selectable. + Configurable per project. + Defined by the image. + License / Cost - Free (part of Windows). + Free, open source (MIT). Free, open source. - Laragon 6 free; versions 7+ require a paid license. + Laragon 6 free; 7+ free for non-commercial use (with license reminders), paid license for commercial use. Free, open source. - Docker Engine free and open source; Docker Desktop requires a paid subscription for larger businesses. + Docker Engine free and open source; Docker Desktop requires a paid subscription for orgs with 250+ employees or $10M+ revenue. From f0f6c5e8550f15b7eefbb7c1ed06ab4f707c4686 Mon Sep 17 00:00:00 2001 From: bidi47 Date: Fri, 2 Oct 2026 18:03:12 +0300 Subject: [PATCH 2/3] added star button Signed-off-by: bidi47 --- src/Page/templates/page/wsl2.html.twig | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/Page/templates/page/wsl2.html.twig b/src/Page/templates/page/wsl2.html.twig index 681ef1f..6fbf33e 100644 --- a/src/Page/templates/page/wsl2.html.twig +++ b/src/Page/templates/page/wsl2.html.twig @@ -10,7 +10,11 @@ {% block title %}Development Environment{% endblock %} -{% block head_links %}{% endblock %} +{% block head_links %} + + + +{% endblock %} {% block stylesheets %}