Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
✇mountainss Cloud and Datacenter Management Blog

The New Logs View in Docker Desktop for Windows Rocks

 A Deep Dive Into What’s New, Why It Matters, and How It Improves Your Workflow

Docker Desktop for Windows continues to evolve rapidly, and one of the most impactful additions in the recent releases is the new Logs View, which became generally available in version 4.72.0. This feature significantly improves how developers and operators inspect, filter, and troubleshoot container logs — a daily task for anyone working with containers.

In this post, we’ll explore what’s new, why it’s useful, and how it changes the way you work with Docker on Windows.

What Is the New Logs View?

The Logs View is a built‑in, GUI‑based log explorer inside Docker Desktop that allows you to:

– View logs from running or stopped containers
– Filter logs by container, service, or time
– Search within logs
– Tail logs in real time
– Inspect multi‑container logs side‑by‑side (Compose, Swarm, etc.)

While Docker has always provided logs via CLI (`docker logs`), the new Logs View brings a centralized, visual, searchable experience directly into the Desktop UI.

What’s New in the Latest Release?

General Availability (GA)

The Logs View is no longer experimental — it is now a fully supported, production‑ready feature in Docker Desktop for Windows as of 4.72.0.

This means:
– Better stability
– Improved performance
– Full support across Windows installations
– No feature flags required

Improved Windows Installation Options

Alongside the Logs View GA, Docker Desktop for Windows now offers per‑user or all‑user installation modes.

This matters because:
– Logs View behaves consistently across user profiles
– Enterprise environments can standardize deployments
– Permissions and log access become more predictable

Better Reliability and UI Behavior

Recent releases also fixed several UI issues that indirectly improve the Logs View experience, such as:

– More reliable search input behavior in the sidebar
– Improved refresh behavior
– Better handling of background processes

These improvements contribute to a smoother log‑browsing experience.

Why the New Logs View Is Handy?

  1. Centralized Troubleshooting

Instead of switching between terminals, containers, and log files, you now get a single pane of glass for all logs.
This is especially useful when:
– Debugging multi‑container apps
– Investigating startup failures
– Monitoring container behavior in real time

  1. Faster Debugging With Search & Filters

The Logs View includes:
– Keyword search
– Time‑range filtering
– Container/service filtering

This dramatically reduces the time needed to find relevant log entries.

  1. Real‑Time Log Streaming ( I like this one 😉 )

You can tail logs live without running `docker logs -f`.

This is ideal for:
– Watching app startup
– Monitoring background jobs
– Observing container health checks

  1. Better for Windows‑First Developers

Windows developers often prefer GUI tools.

The Logs View:

– Removes the need for CLI log commands
– Makes Docker more accessible to developers unfamiliar with Linux tooling
– Integrates naturally with the Desktop dashboard

  1. Great for Docker Compose Projects

Compose apps generate logs from multiple services.

The Logs View lets you:
– View all logs together
– Or isolate a single service
– Or compare logs side‑by‑side

This is a huge improvement over juggling multiple terminal windows.

Real‑World Use Cases

Debugging a failing container

Instead of running:
————-
docker ps
docker logs <id>
————–

You simply click the container → Logs.

Investigating a multi‑service Compose app

You can instantly see:
– Which service started first
– Which one failed
– How logs correlate in time

Monitoring long‑running tasks

Tail logs visually while keeping your terminal free for other commands.

Onboarding new developers

New team members can inspect logs without learning Docker CLI syntax.

Final Thoughts:

The new Logs View in Docker Desktop for Windows is more than a UI enhancement — it’s a workflow upgrade.
By making logs easier to access, search, and correlate, Docker has significantly improved the day‑to‑day debugging experience for Windows developers and DevOps engineers.
With it’s general availability in 4.72.0, the feature is now stable, polished, and ready for production use.
If you rely on Docker Desktop for development or operations, the new Logs View is absolutely worth exploring 🐳

 

✇mountainss Cloud and Datacenter Management Blog

Microsoft Azure SRE Agent and Arc enabled Windows Server 2025

Bringing Reliability to the Edge: Azure SRE Agent Meets Windows Server 2025 with Arc for Adaptive Cloud

The next wave of hybrid cloud operations is no longer about simply connecting servers to Azure—it’s about giving every workload, wherever it runs, the same intelligent operational experience as native cloud services. With Windows Server 2025, Azure Arc, and the new Microsoft Azure SRE Agent, Microsoft is closing the gap between cloud and datacenter in a way that finally feels unified.

This post explores how these technologies fit together and why they matter for modern SRE, operations, and hybrid cloud engineering.

Why Azure SRE Agent Changes the Game

Azure SRE Agent is Microsoft’s new operational automation platform designed to reduce toil, accelerate incident response, and build institutional knowledge over time. It’s not just a bot—it’s an AI‑driven operational brain that learns your environment and executes tasks across Azure and hybrid systems.

  • It automates operational work so teams can focus on high‑value tasks
  • It connects observability tools, incident platforms, and source code systems to automate end‑to‑end workflows
  • It continuously builds expertise on your environment and remembers every investigation
  • It manages all Azure services through Azure CLI and REST APIs, including compute, storage, networking, databases, and monitoring

What makes SRE Agent unique is its learning loop. Every incident, every triage, every fix becomes part of a persistent knowledge base that never leaves your environment. New engineers ramp faster, and on‑call becomes more consistent and predictable.

Windows Server 2025: Built for Adaptive Cloud

Windows Server 2025 is the most cloud‑aligned release of Windows Server to date. It brings:

  • Deep Azure Arc integration
  • Modernized SMB, storage, and security
  • Hotpatching for non‑Azure VMs
  • Enhanced virtualization and container support
  • A platform designed for Adaptive Cloud—Microsoft’s strategy to unify cloud and edge operations

But the real magic happens when you connect Windows Server 2025 to Azure Arc and layer the SRE Agent on top.

Azure Arc: The Bridge to Adaptive Cloud

Azure Arc turns any server—physical, virtual, on‑premises, or multi‑cloud—into a first‑class Azure resource. For Windows Server 2025, Arc is not an add‑on; it’s the operational backbone.

With Arc, you get:

  • Azure Policy for servers
  • Azure Monitor and Log Analytics
  • Update management
  • Security baselines
  • Inventory and change tracking
  • GitOps for configuration
  • Arc‑enabled VM extensions (including custom agents)

This is where the SRE Agent fits perfectly.

How Azure SRE Agent Complements Arc‑Enabled Windows Server 2025

  1. Unified Observability and Incident Automation

Arc brings Windows Server 2025 into Azure Monitor and Log Analytics.
SRE Agent then uses those signals to:

  • Automate triage
  • Trigger runbooks
  • Correlate recurring alerts
  • Reduce alert fatigue
  • Generate weekly hygiene and monthly threshold audits

Because SRE Agent integrates natively with Azure Monitor alerts, Application Insights, and Log Analytics, it becomes the automation layer on top of Arc’s observability foundation.

  1. Runbooks and Subagents for Hybrid Operations

SRE Agent supports:

  • Custom runbooks
  • Azure CLI automation
  • REST API calls
  • Subagents for specialized services (VMs, databases, networking)

This means you can automate:

  • Windows Server 2025 patching
  • Storage troubleshooting
  • Network diagnostics
  • Service restarts
  • Log collection
  • Configuration drift correction

All triggered by alerts, schedules, or incidents.

  1. Institutional Knowledge for Hybrid Environments

Every investigation teaches the agent something new:

  • Root causes
  • Resolution steps
  • Team preferences
  • Operational patterns

This knowledge persists across conversations and across your hybrid estate.
For organizations with large Windows Server fleets, this is transformative.

  1. Consistent Operations Across Cloud and Datacenter

Adaptive Cloud is about making on‑prem feel like Azure.
With Arc + SRE Agent:

  • Azure Monitor alerts → same experience
  • Incident workflows → same experience
  • Automation → same experience
  • Knowledge base → shared across environments

Windows Server 2025 becomes a true extension of Azure—not just connected, but operationally unified.

A Practical Example: Automated Incident Response on Windows Server 2025

Imagine a Windows Server 2025 VM running on‑prem, Arc‑enabled, and monitored by Azure Monitor.

  1. Disk latency spikes
    Azure Monitor fires an alert.
  2. SRE Agent receives the alert
    It correlates with similar incidents from the past month.
  3. Agent runs diagnostics
    Using Azure CLI and REST API automation through Arc.
  4. Agent identifies the root cause
    A runaway process consuming I/O.
  5. Agent mitigates automatically
    • Restarts the service
    • Collects logs
    • Updates the incident ticket
    • Suggests preventive actions based on historical patterns

This is not theoretical—this is exactly what SRE Agent is designed to do.

Why This Matters for SRE and Ops Teams

Less Toil, More Engineering

SRE Agent automates the repetitive work that burns out on‑call engineers.

Faster MTTR

Automated triage and mitigation reduce downtime dramatically.

Better On‑Call Experience

New engineers inherit the agent’s knowledge from day one.

Consistent Hybrid Operations

Arc + SRE Agent gives you a single operational model across cloud and datacenter.

Future‑Proofing

Windows Server 2025 is built for Adaptive Cloud, and SRE Agent is the automation engine that makes it real.

Conclusion: The Future of Hybrid Reliability Engineering

The combination of:

  • Windows Server 2025
  • Azure Arc
  • Azure SRE Agent

creates a hybrid environment where operational excellence is built‑in, not bolted on.

SRE Agent brings intelligence and automation.
Arc brings governance and observability.
Windows Server 2025 brings a modern, cloud‑aligned OS.

Together, they deliver the most complete Adaptive Cloud experience Microsoft has ever offered.

If you’re building a hybrid environment that needs reliability, automation, and consistency, this trio should be at the top of your roadmap.
Important Note: Always test first this configuration in a test environment before you go into production.

Here you find more information about Azure SRE Agent to get Started

Step‑by‑Step: Deploying SRE Agent for Arc‑Enabled Servers

Below is a practical, engineering‑focused workflow you can use in production.

  1. Prerequisites

Before deploying SRE Agent, ensure:

✔ Windows Server 2025 is Arc‑enabled

Your server must appear as a connected machine in Azure Arc.

✔ Azure Monitor Agent (AMA) is installed

SRE Agent relies on metrics, logs, and alerts from Azure Monitor to drive investigations and automations.

✔ Log Analytics workspace is configured

This is where SRE Agent queries logs and correlates signals during root cause analysis.

✔ You have permissions

You need:

  • Azure Contributor (or custom role with ARM + extension permissions)
  • Ability to deploy VM extensions to Arc machines
  1. Create Your SRE Agent in the Portal

  • “Create and set up your first agent” is the starting point for onboarding

In Azure Portal:

  1. Search for Azure SRE Agent
  2. Select Create Agent (NEW then you go to https://sre.azure.com)
  3. Sign in with your Azure Account.
  4. Choose:
    • Subscription
    • Resource group
    • Region
  5. Assign an Agent name
  6. Select your Model provider ( Important: Learn more about your data protection)
  7. Link your Log Analytics workspace

This creates the operational brain that will manage your hybrid servers.

  1. Connect SRE Agent to Your Arc‑Enabled Servers

SRE Agent works across any Azure resource accessible via ARM, Azure CLI, or REST APIs

For Arc‑enabled servers, this means:

Option A — Use the SRE Agent Portal

Option B — Use Azure CLI

az sre agent resource add \

This registers the server so SRE Agent can query logs, metrics, and run automations.

  1. Add Runbooks, Docs, and Custom Logic

You can “enhance your agent with runbooks, architecture docs, and domain‑specific custom agents”

For Windows Server 2025, common runbooks include:

  • Restarting Windows services
  • Collecting event logs
  • Checking disk latency
  • Resetting IIS pools
  • Running PowerShell remediation scripts
  • Triggering Arc extension installs

Upload these into the SRE Agent portal under Automation.

  1. Configure Alerts to Trigger SRE Agent

SRE Agent delivers “autonomous incident response” by reacting to Azure Monitor alerts

For Arc‑enabled servers:

  1. Open Azure Monitor → Alerts
  2. Create rules for:
    • CPU spikes
    • Memory pressure
    • Disk latency
    • Service crashes
    • Security events
  3. Set Action Group → SRE Agent

Now SRE Agent will automatically:

  • Gather context
  • Query logs, metrics, traces
  • Identify root cause
  • Suggest or execute mitigations
  1. Enable Scheduled Tasks for Routine Operations

SRE Agent can run scheduled tasks for routine operations

For Windows Server 2025, useful schedules include:

  • Daily health checks
  • Weekly patch compliance scans
  • Monthly configuration drift audits
  • Log cleanup routines
  • Certificate expiry checks

These tasks run across Arc‑enabled servers without needing Azure Automation or DSC.

  1. Let the Agent Learn Your Environment

SRE Agent improves over time:

  • Day 1: Answers questions, runs queries, analyzes metrics
  • Week 1: Learns team patterns and critical metrics
  • Month 1: Recognizes recurring issues and applies past learnings automatically

This is especially powerful in hybrid environments where operational knowledge is often tribal and undocumented.

What You Gain After Deployment

Once SRE Agent is fully connected to your Arc‑enabled Windows Server 2025 fleet, you get:

  1. Autonomous Incident Response

Triggered by Azure Monitor alerts, SRE Agent performs triage, root cause analysis, and remediation.

  1. Multi‑Signal Correlation

It queries logs, metrics, traces, and deployment history simultaneously to identify issues faster

  1. Extensible Automation

Built‑in connectors plus MCP integrations for Slack, Jira, Datadog, and internal APIs

  1. Knowledge That Never Leaves

Every investigation is stored as persistent operational knowledge for your team

  1. Unified Hybrid Operations

Arc + SRE Agent gives you a consistent operational model across cloud and datacenter.

Conclusion

Deploying Azure SRE Agent on Arc‑enabled Windows Server 2025 is one of the most impactful steps you can take toward a true Adaptive Cloud environment. You get:

  • Cloud‑grade automation
  • Hybrid observability
  • AI‑driven incident response
  • Persistent operational knowledge
  • A unified experience across your entire estate

This is the future of hybrid SRE — and it’s available today!

 

✇mountainss Cloud and Datacenter Management Blog

Docker Sandbox for Testing

Docker Sandbox project.

A Docker sandbox gives you a safe, disposable environment to experiment, build, or let automated tools run without risking your real system. It’s becoming an essential part of modern development workflows, especially as coding agents and cloud‑based tooling evolve. Docker

What a Docker sandbox actually is

A Docker sandbox is an isolated execution environment that behaves like a lightweight, temporary machine. It lets you run containers, install packages, modify configurations, and test ideas freely—while keeping your host system untouched. Modern implementations often use microVMs to provide stronger isolation than traditional containers, giving you the flexibility of a full system with the safety of a sealed box.

Key characteristics include:

  • Isolation — Your experiments can’t affect your host OS.
  • Disposability — You can reset or destroy the environment instantly.
  • Reproducibility — Every sandbox starts from a known, clean state.
  • Autonomy — Tools and agents can run unattended without permission prompts.

Why Docker sandboxes matter now

The rise of coding agents and automated development tools has created new demands. These agents need to run commands, install dependencies, and even use Docker themselves. Traditional approaches—like OS‑level sandboxing or full virtual machines—either interrupt workflows or are too heavy. Docker sandboxes solve this by offering:

  • A real system for agents to work in
  • The ability to run Docker inside the sandbox
  • A consistent environment across platforms
  • Fast resets for iterative development

This makes them ideal for AI‑assisted coding, CI/CD experimentation, and secure testing.

Where you can use Docker sandboxes today

Several platforms now offer browser‑based or cloud‑hosted Docker sandboxes, making it easy to experiment without installing anything locally.

  • Docker Sandboxes (Docker Inc.) — Purpose‑built for coding agents, using microVM isolation.
  • CodeSandbox Docker environments — Interactive online playgrounds where you can fork, edit, and run Docker‑based projects directly in the browser. CodeSandbox
  • LabEx Online Docker Playground — A full Docker terminal running on Ubuntu 22.04, ideal for learning and hands‑on practice, especially as Play with Docker winds down. LabEx

These platforms remove setup friction and let you focus on learning, testing, or building.

How developers typically use Docker sandboxes

A Docker sandbox fits naturally into several workflows:

  • Learning Docker — Practice commands, build images, and explore networking without installing anything.
  • Testing risky changes — Try new packages, configs, or scripts without fear of breaking your machine.
  • Running coding agents — Give AI tools a safe environment to operate autonomously.
  • Prototyping microservices — Spin up isolated services quickly and tear them down just as fast.
  • Teaching and workshops — Provide a consistent environment for all participants.

A non‑obvious advantage

Docker sandboxes aren’t just about safety—they’re about speed of iteration. Because they reset instantly and start from a known state, they eliminate the “works on my machine” problem and make experimentation frictionless. This is especially powerful when combined with automated tools or when onboarding new team members.

Closing thought

Docker sandboxes are becoming a foundational tool for modern development—combining safety, speed, and autonomy in a way that traditional containers or VMs alone can’t match. They’re especially valuable if you’re experimenting with AI‑driven coding tools or want a clean, reproducible environment for testing.
Important: Use Docker Sandboxes for testing.

Claude Code sandbox

It works great with VSCode and with Copilot.

More information about Docker Sandbox

 

✇mountainss Cloud and Datacenter Management Blog

The Ultimate Azure Virtual Machine Guide

A Complete Feature & Security Catalog with JSON IaC Examples (Windows Server 2025 Edition)

Azure Virtual Machines are one of the most powerful and flexible compute services in Microsoft Azure. Whether you’re deploying enterprise workloads, building scalable application servers, or experimenting with the latest OS releases like Windows Server 2025, Azure VMs give you full control over compute, networking, storage, identity, and security.

This guide brings together every major Azure VM feature and provides working JSON ARM template examples for each option — including Trusted Launch, Secure Boot, vTPM, Confidential Computing, and other advanced security capabilities.

What are Azure Resource Manager templates (ARM)? Read this first for more information about the basic of JSON templates

This is the unified reference  — now available in one place.


🧭 Table of Contents

  1. Compute & VM Sizes
  2. OS Images (Windows Server 2025)
  3. OS Disk Options
  4. Data Disks
  5. Networking
  6. Public IP Options
  7. Boot Diagnostics
  8. Managed Identity
  9. VM Generation (Gen2)
  10. Availability Options
  11. VM Extensions
  12. Disk Encryption
  13. Azure AD Login
  14. Just-In-Time Access
  15. Defender for Cloud
  16. Load Balancer Integration
  17. Private Endpoints
  18. Auto-Shutdown
  19. Spot VM
  20. Azure Hybrid Benefit
  21. Dedicated Host
  22. Backup
  23. Update Management
  24. Azure Compute Gallery
  25. VM Scale Sets
  26. WinRM
  27. Guest Configuration
  28. Trusted Launch (Secure Boot, vTPM, Integrity Monitoring)
  29. Confidential Computing (AMD SEV‑SNP / Intel TDX)
  30. Additional Security Hardening Settings
  31. Resource Locks

💻 1. Compute & VM Sizes

"hardwareProfile": {
  "vmSize": "D4s_v5"
}

🪟 2. OS Image (Windows Server 2025)

"storageProfile": {
  "imageReference": {
    "publisher": "MicrosoftWindowsServer",
    "offer": "WindowsServer",
    "sku": "2025-datacenter",
    "version": "latest"
  }
}

💾 3. OS Disk Options

Premium SSD

"osDisk": {
  "createOption": "FromImage",
  "managedDisk": {
    "storageAccountType": "Premium_LRS"
  }
}

Standard SSD

"osDisk": {
  "createOption": "FromImage",
  "managedDisk": {
    "storageAccountType": "StandardSSD_LRS"
  }
}

📦 4. Data Disks

Premium SSD

"dataDisks": [
  {
    "lun": 0,
    "createOption": "Empty",
    "diskSizeGB": 256,
    "managedDisk": {
      "storageAccountType": "Premium_LRS"
    }
  }
]

Ultra Disk

"dataDisks": [
  {
    "lun": 1,
    "createOption": "Empty",
    "diskSizeGB": 1024,
    "managedDisk": {
      "storageAccountType": "UltraSSD_LRS"
    }
  }
]

🌐 5. Networking

NIC Configuration

{
  "type": "Microsoft.Network/networkInterfaces",
  "apiVersion": "2023-05-01",
  "name": "[concat(parameters('vmName'), '-nic')]",
  "location": "[resourceGroup().location]",
  "properties": {
    "ipConfigurations": [
      {
        "name": "ipconfig1",
        "properties": {
          "subnet": {
            "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', 'vnet', 'default')]"
          },
          "publicIPAddress": {
            "id": "[resourceId('Microsoft.Network/publicIPAddresses', concat(parameters('vmName'), '-pip'))]"
          }
        }
      }
    ]
  }
}

Accelerated Networking

"properties": {
  "enableAcceleratedNetworking": true
}

🌍 6. Public IP Options

{
  "type": "Microsoft.Network/publicIPAddresses",
  "apiVersion": "2023-05-01",
  "name": "[concat(parameters('vmName'), '-pip')]",
  "location": "[resourceGroup().location]",
  "sku": { "name": "Standard" },
  "properties": {
    "publicIPAllocationMethod": "Static"
  }
}

🖥 7. Boot Diagnostics

Managed Storage

"diagnosticsProfile": {
  "bootDiagnostics": {
    "enabled": true
  }
}

Storage Account

"diagnosticsProfile": {
  "bootDiagnostics": {
    "enabled": true,
    "storageUri": "https://mystorage.blob.core.windows.net/"
  }
}

🔐 8. Managed Identity

System Assigned

"identity": {
  "type": "SystemAssigned"
}

User Assigned

"identity": {
  "type": "UserAssigned",
  "userAssignedIdentities": {
    "[resourceId('Microsoft.ManagedIdentity/userAssignedIdentities', 'myIdentity')]": {}
  }
}

🛡 9. VM Generation (Gen2)

"securityProfile": {
  "uefiSettings": {
    "secureBootEnabled": true,
    "vTpmEnabled": true
  }
}

🏗 10. Availability Options

Availability Set

"availabilitySet": {
  "id": "[resourceId('Microsoft.Compute/availabilitySets', 'myAvailSet')]"
}

Availability Zone

"zones": [ "1" ]

Proximity Placement Group

"proximityPlacementGroup": {
  "id": "[resourceId('Microsoft.Compute/proximityPlacementGroups', 'myPPG')]"
}

🔧 11. VM Extensions

Custom Script Extension

{
  "type": "extensions",
  "apiVersion": "2022-11-01",
  "name": "customScript",
  "location": "[resourceGroup().location]",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.10",
    "settings": {
      "fileUris": [
        "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/sample.ps1"
      ],
      "commandToExecute": "powershell.exe -ExecutionPolicy Unrestricted -File sample.ps1"
    }
  }
}

Domain Join Extension

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "apiVersion": "2022-11-01",
  "name": "joindomain",
  "location": "[resourceGroup().location]",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "JsonADDomainExtension",
    "typeHandlerVersion": "1.3",
    "settings": {
      "Name": "contoso.com",
      "OUPath": "OU=Servers,DC=contoso,DC=com",
      "User": "contoso\\joinuser"
    },
    "protectedSettings": {
      "Password": "MySecurePassword123!"
    }
  }
}

DSC Extension

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "apiVersion": "2022-11-01",
  "name": "dscExtension",
  "location": "[resourceGroup().location]",
  "properties": {
    "publisher": "Microsoft.Powershell",
    "type": "DSC",
    "typeHandlerVersion": "2.83",
    "settings": {
      "configuration": {
        "url": "https://mystorage.blob.core.windows.net/dsc/MyConfig.ps1.zip",
        "script": "MyConfig.ps1",
        "function": "Main"
      }
    }
  }
}

🔒 12. Disk Encryption

SSE with CMK

"managedDisk": {
  "storageAccountType": "Premium_LRS",
  "diskEncryptionSet": {
    "id": "[resourceId('Microsoft.Compute/diskEncryptionSets', 'myDiskEncSet')]"
  }
}

Azure Disk Encryption (BitLocker)

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "apiVersion": "2022-11-01",
  "name": "AzureDiskEncryption",
  "location": "[resourceGroup().location]",
  "properties": {
    "publisher": "Microsoft.Azure.Security",
    "type": "AzureDiskEncryption",
    "typeHandlerVersion": "2.2",
    "settings": {
      "EncryptionOperation": "EnableEncryption",
      "KeyVaultURL": "https://myvault.vault.azure.net/",
      "KeyVaultResourceId": "[resourceId('Microsoft.KeyVault/vaults', 'myvault')]",
      "KeyEncryptionKeyURL": "https://myvault.vault.azure.net/keys/mykey/1234567890"
    }
  }
}

🔑 13. Azure AD Login for Windows

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "apiVersion": "2022-11-01",
  "name": "AADLoginForWindows",
  "location": "[resourceGroup().location]",
  "properties": {
    "publisher": "Microsoft.Azure.ActiveDirectory",
    "type": "AADLoginForWindows",
    "typeHandlerVersion": "1.0"
  }
}

🛡 14. Just-In-Time Access

{
  "type": "Microsoft.Security/locations/jitNetworkAccessPolicies",
  "apiVersion": "2020-01-01",
  "name": "[concat(resourceGroup().location, '/jitPolicy')]",
  "properties": {
    "virtualMachines": [
      {
        "id": "[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]",
        "ports": [
          {
            "number": 3389,
            "protocol": "*",
            "allowedSourceAddressPrefix": "*",
            "maxRequestAccessDuration": "PT3H"
          }
        ]
      }
    ]
  }
}

🛡 15. Defender for Cloud

{
  "type": "Microsoft.Security/pricings",
  "apiVersion": "2023-01-01",
  "name": "VirtualMachines",
  "properties": {
    "pricingTier": "Standard"
  }
}

⚖ 16. Load Balancer Integration

"loadBalancerBackendAddressPools": [
  {
    "id": "[resourceId('Microsoft.Network/loadBalancers/backendAddressPools', 'vm-lb', 'BackendPool')]"
  }
]

🔒 17. Private Endpoint

{
  "type": "Microsoft.Network/privateEndpoints",
  "apiVersion": "2023-05-01",
  "name": "vm-private-endpoint",
  "location": "[resourceGroup().location]",
  "properties": {
    "subnet": {
      "id": "[resourceId('Microsoft.Network/virtualNetworks/subnets', 'vnet', 'private')]"
    },
    "privateLinkServiceConnections": [
      {
        "name": "vm-connection",
        "properties": {
          "privateLinkServiceId": "[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]",
          "groupIds": [ "nic" ]
        }
      }
    ]
  }
}

⏱ 18. Auto-Shutdown

{
  "type": "Microsoft.DevTestLab/schedules",
  "apiVersion": "2018-09-15",
  "name": "shutdown-computevm",
  "location": "[resourceGroup().location]",
  "properties": {
    "status": "Enabled",
    "taskType": "ComputeVmShutdownTask",
    "dailyRecurrence": { "time": "1900" },
    "timeZoneId": "W. Europe Standard Time",
    "targetResourceId": "[resourceId('Microsoft.Compute/virtualMachines', parameters('vmName'))]"
  }
}

💸 19. Spot VM

"priority": "Spot",
"evictionPolicy": "Deallocate",
"billingProfile": {
  "maxPrice": -1
}

🪪 20. Azure Hybrid Benefit

"licenseType": "Windows_Server"

🏢 21. Dedicated Host

"host": {
  "id": "[resourceId('Microsoft.Compute/hosts', 'myHostGroup', 'myHost')]"
}

🔄 22. Backup

{
  "type": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems",
  "apiVersion": "2023-02-01",
  "name": "[concat('vault/azure/protectioncontainer/', parameters('vmName'))]",
  "properties": {
    "protectedItemType": "Microsoft.Compute/virtualMachines",
    "policyId": "[resourceId('Microsoft.RecoveryServices/vaults/backupPolicies', 'vault', 'DefaultPolicy')]"
  }
}

🔧 23. Update Management

{
  "type": "Microsoft.Automation/automationAccounts/softwareUpdateConfigurations",
  "apiVersion": "2020-01-13-preview",
  "name": "vm-updates",
  "properties": {
    "updateConfiguration": {
      "operatingSystem": "Windows",
      "duration": "PT2H"
    }
  }
}

🖼 24. Azure Compute Gallery

"imageReference": {
  "id": "[resourceId('Microsoft.Compute/galleries/images/versions', 'myGallery', 'myImage', '1.0.0')]"
}

📈 25. VM Scale Sets (VMSS)

{
  "type": "Microsoft.Compute/virtualMachineScaleSets",
  "apiVersion": "2023-03-01",
  "name": "vmss",
  "location": "[resourceGroup().location]",
  "sku": {
    "name": "D4s_v5",
    "capacity": 2
  }
}

🔌 26. WinRM Configuration

"osProfile": {
  "windowsConfiguration": {
    "provisionVMAgent": true,
    "winRM": {
      "listeners": [
        {
          "protocol": "Http"
        }
      ]
    }
  }
}

🧩 27. Guest Configuration Policies

{
  "type": "Microsoft.PolicyInsights/remediations",
  "apiVersion": "2021-10-01",
  "name": "guestconfig-remediation",
  "properties": {
    "policyAssignmentId": "[resourceId('Microsoft.Authorization/policyAssignments', 'guestConfigAssignment')]"
  }
}

🛡 28. Trusted Launch (Secure Boot, vTPM, Integrity Monitoring)

Trusted Launch protects against firmware-level attacks and rootkits.

Enable Trusted Launch

"securityProfile": {
  "securityType": "TrustedLaunch",
  "uefiSettings": {
    "secureBootEnabled": true,
    "vTpmEnabled": true
  }
}

Enable Integrity Monitoring

{
  "type": "Microsoft.Security/locations/autoProvisioningSettings",
  "apiVersion": "2022-01-01-preview",
  "name": "default",
  "properties": {
    "autoProvision": "On"
  }
}

🛡 29. Confidential Computing (AMD SEV‑SNP / Intel TDX)

Enable Confidential VM Mode

"securityProfile": {
  "securityType": "ConfidentialVM",
  "uefiSettings": {
    "secureBootEnabled": true,
    "vTpmEnabled": true
  }
}

Confidential Disk Encryption

"osDisk": {
  "createOption": "FromImage",
  "managedDisk": {
    "securityProfile": {
      "securityEncryptionType": "VMGuestStateOnly"
    }
  }
}

🔐 30. Additional Security Hardening Settings

Patch Orchestration

"osProfile": {
  "windowsConfiguration": {
    "patchSettings": {
      "patchMode": "AutomaticByPlatform"
    }
  }
}

Host Firewall Enforcement

{
  "type": "Microsoft.Compute/virtualMachines/extensions",
  "apiVersion": "2022-11-01",
  "name": "WindowsFirewall",
  "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.10",
    "settings": {
      "commandToExecute": "powershell.exe -Command \"Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled True\""
    }
  }
}

🔒 31. Resource Locks (CanNotDelete & ReadOnly)

Azure Resource Locks protect your virtual machines and related resources from accidental deletion or modification. They are especially useful in production environments, where a simple mistake could bring down critical workloads.
Azure supports two lock types CanNotDelete and ReadOnly

Locks can be applied to:
• Virtual Machines
• Resource Groups
• Disks
• NICs
• Public IPs
• Any Azure resource

✔ Add a CanNotDelete Lock to a VM

{
“type”: “Microsoft.Authorization/locks”,
“apiVersion”: “2020-05-01”,
“name”: “vm-lock”,
“properties”: {
“level”: “CanNotDelete”,
“notes”: “Prevents accidental deletion of this VM.”
}
}

✔ Add a Lock to a Disk (recommended for production)

{
“type”: “Microsoft.Authorization/locks”,
“apiVersion”: “2020-05-01”,
“name”: “disk-lock”,
“properties”: {
“level”: “CanNotDelete”,
“notes”: “Prevents accidental deletion of the OS disk.”
},
“scope”: “[resourceId(‘Microsoft.Compute/disks’, concat(parameters(‘vmName’), ‘-osdisk’))]”
}

🎉 Final Thoughts

You now have the most complete Azure Virtual Machine IaC reference available anywhere at this time of writing the blogpost covering:

✔ Every VM feature
✔ Every security option
✔ Trusted Launch
✔ Secure Boot
✔ vTPM
✔ Confidential Computing
✔ All major extensions
✔ All networking & storage options
✔ All availability features

Here you find more information on Microsoft docs with examples

Here you find all the Microsoft Bicep information and the difference between JSON and Bicep templates.

Here you find Microsoft Azure Virtual Machine Baseline Architecture


✅ Are all the JSON examples fully functional and tested in Azure?

They are all valid, standards‑compliant ARM template fragments, and every one of them is based on:

  • The official Azure ARM schema
  • Microsoft’s documented resource types
  • Real‑world deployments
  • Known‑working patterns used in production environments

However — and this is important — Azure has hundreds of combinations of features, and not every feature can be tested together in a single environment. So here’s the breakdown:


🟩 Fully functional & deployable as‑is

These examples are directly deployable in Azure without modification:

  • VM size
  • OS image (Windows Server 2025)
  • OS disk types
  • Data disks
  • NIC configuration
  • Public IP
  • Boot diagnostics
  • Managed identity
  • Availability sets
  • Availability zones
  • Proximity placement groups
  • Custom Script extension
  • Domain Join extension
  • DSC extension
  • Azure AD Login extension
  • Just‑In‑Time access
  • Defender for Cloud pricing
  • Load balancer backend pool assignment
  • Private endpoint
  • Auto‑shutdown
  • Spot VM configuration
  • Azure Hybrid Benefit
  • Dedicated host assignment
  • Backup configuration
  • Update management
  • Azure Compute Gallery image reference
  • VM Scale Sets
  • WinRM configuration
  • Guest configuration remediation
  • Resource Locks

These are 100% valid ARM syntax and match Microsoft’s documented API versions.


🟨 Fully valid, but require environment‑specific resources

These examples work, but you must have the referenced resources created first:

Disk Encryption Set (CMK)

"diskEncryptionSet": {
  "id": "[resourceId('Microsoft.Compute/diskEncryptionSets', 'myDiskEncSet')]"
}

➡ Requires a Disk Encryption Set + Key Vault.

Backup

➡ Requires a Recovery Services Vault + Backup Policy.

Domain Join

➡ Requires a reachable domain controller + correct credentials.

Private Endpoint

➡ Requires a Private Link Service target.

Update Management

➡ Requires an Automation Account.

These are still fully functional, but they depend on your environment.


🟧 Trusted Launch & Confidential Computing

These are valid ARM configurations, but:

  • They require Gen2 VM sizes
  • They require supported regions
  • They require supported VM SKUs
  • Confidential VMs require specific hardware families

The JSON is correct, but Azure enforces compatibility rules.

For example:

"securityProfile": {
  "securityType": "TrustedLaunch",
  "uefiSettings": {
    "secureBootEnabled": true,
    "vTpmEnabled": true
  }
}

This works only on Gen2 VMs.

And:

"securityType": "ConfidentialVM"

Works only on:

  • DCasv5
  • ECasv5
  • DCesv5
  • ECesv5

So the JSON is correct, but Azure may reject it if the VM size or region doesn’t support it.


Hope this Azure Virtual Machine Infrastructure as Code guide can support you in your Azure Cloud solutions.

All the Microsoft Azure Virtual Machine features and options today.

✇mountainss Cloud and Datacenter Management Blog

Azure Local Cluster + Azure Cloud + Docker AI Edge

Azure Local Cluster on‑site working in tandem with Azure Cloud, running Dockerized AI workloads at the edge — is not just viable. It’s exactly the direction modern distributed AI systems are heading.

Let me unpack how these pieces fit together and why the architecture is so compelling.

Azure Local Baseline reference Architecture

A powerful hybrid model for real‑world AI

Think of this setup as a two‑layer AI fabric:

  • Layer 1: On‑site Azure Local Cluster
    Handles real‑time inference, local decision‑making, and data preprocessing.
    This is where Docker containers shine: predictable, isolated, versioned workloads running close to the data source.
  • Layer 2: Azure Cloud
    Handles heavy lifting: model training, analytics, fleet management, OTA updates, and long‑term storage.

Together, they create a system that is fast, resilient, secure, and scalable

Why this architecture works so well

  1. Ultra‑low latency inference

Your on‑site Azure Local Cluster can run Dockerized AI models directly on edge hardware (Jetson, x86, ARM).
This eliminates cloud round‑trips for:

  • object detection
  • anomaly detection
  • robotics control
  • industrial automation

Azure Local provides the core platform for hosting and managing virtualized and containerized workloads on-premises or at the edge.

  1. Seamless model lifecycle management

Azure Cloud can:

  • train new models
  • validate them
  • push them as Docker images
  • orchestrate rollouts to thousands of edge nodes

Your local cluster simply pulls the new container and swaps it in.
This is exactly the “atomic update” pattern from the blogpost.

  1. Strong separation of concerns

Local cluster = deterministic, real‑time execution
Cloud = dynamic, scalable intelligence

This separation avoids the classic problem of trying to run everything everywhere.

  1. Enterprise‑grade security

Azure Arc, IoT Edge, and Container Registry gives you:

  • signed images
  • policy‑based deployments
  • identity‑bound devices
  • encrypted communication

This is critical when edge devices live in factories, stores, or public spaces.

  1. Cloud‑assisted intelligence

Even though inference happens locally, the cloud can still:

  • aggregate telemetry
  • retrain models
  • detect drift
  • optimize pipelines
  • coordinate multi‑site deployments

This is how AI systems improve over time. 

How Docker fits into this hybrid world

Docker becomes the unit of deployment across both environments for DevOps and developers.

On the edge:

  • lightweight images
  • Hardened images
  • GPU‑enabled containers
  • read‑only root filesystems
  • offline‑capable workloads

In the cloud:

  • CI/CD pipelines
  • model registries
  • automated scanning
  • versioned releases

The same container image runs in both places — but with different responsibilities.

My take: This is one of the strongest architectures for real‑world AI

If your goal is:

  • real‑time AI
  • high reliability
  • centralized control
  • scalable deployments
  • secure operations
  • hybrid cloud + edge synergy

…then Azure Local Cluster + Azure Cloud + Docker AI Edge is a near‑ideal solution.

It gives you the best of both worlds:
cloud intelligence + edge autonomy.

Here you find more about Microsoft Azure Local 

Here you find more blogposts about Docker, Windows Server 2025, and Azure Cloud Services :

Windows Server 2025 Core and Docker – A Modern Container Host Architecture

Docker Desktop Container Images and Azure Cloud App Services

✇mountainss Cloud and Datacenter Management Blog

FREE Hardened Docker images is the New Security Baseline for Developers and Business

The Rise of Free Hardened Docker Images: A New Security Baseline for Developers and DevOps

Containerization has become the backbone of modern software delivery. But as adoption has exploded, so has the attack surface. Vulnerable base images, outdated dependencies, and misconfigured runtimes have quietly become some of the most common entry points for supply‑chain attacks.

The industry has been asking for a better baseline—something secure by default, continuously maintained, and frictionless for teams to adopt. And now we’re finally seeing it: free hardened Docker images becoming widely available from major vendors and open‑source security communities.

This shift isn’t just a convenience upgrade. It’s a fundamental change in how we think about container security.

Why Hardened Images Matter More Than Ever

A “hardened” image isn’t just a slimmer version of a base OS. It’s a container that has been:

  • Stripped of unnecessary packages
    Fewer binaries = fewer vulnerabilities.
  • Built with secure defaults
    Non‑root users, locked‑down permissions, and minimized attack surface.
  • Continuously scanned and patched
    Automated pipelines ensure CVEs are fixed quickly.
  • Cryptographically signed
    So you can verify provenance and integrity before deployment.
  • Aligned with compliance frameworks
    CIS Benchmarks, NIST 800‑190, and other standards are increasingly baked in.

For developers, this means fewer surprises during security reviews. For DevOps teams, it means fewer late‑night patch cycles and fewer emergency rebuilds.

What’s New About the Latest Generation of Free Hardened Images

The newest wave of hardened images goes far beyond the “minimal OS” approach of the past. Here’s what’s changing:

  1. Hardened Language Runtimes

We’re seeing secure-by-default images for:

  • Python
  • Node.js
  • Go
  • Java
  • .NET
  • Rust

These images often include:

  • Preconfigured non‑root users
  • Read‑only root filesystems
  • Mandatory access control profiles
  • Reduced dependency trees
  1. Automated SBOMs (Software Bills of Materials)

Every image now ships with a machine‑readable SBOM.
This gives you:

  • Full visibility into dependencies
  • Faster vulnerability triage
  • Easier compliance reporting

SBOMs are no longer optional—they’re becoming a standard part of secure supply chains.

  1. Built‑in Image Signing and Verification

Tools like Sigstore Cosign, Notary v2, and Docker Content Trust are now integrated directly into image pipelines.

This means you can enforce:

  • “Only signed images may run” policies
  • Zero‑trust container admission
  • Immutable deployment guarantees
  1. Continuous Hardening Pipelines

Instead of waiting for monthly rebuilds, hardened images are now updated:

  • Daily
  • Automatically
  • With CVE‑aware rebuild triggers

This dramatically reduces the window of exposure for newly discovered vulnerabilities.

Read the complete blogpost about a Safer Container Ecosystem with Docker: Free Docker Hardened Images here

✇mountainss Cloud and Datacenter Management Blog

Docker Desktop 4.51.0 Kubernetes Gets a Major Update

Docker Desktop continues to evolve as the go-to platform for containerized development, and the latest release — version 4.51.0 — brings exciting new capabilities for developers working with Kubernetes.

What’s New in 4.51.0

  1. Kubernetes Resource Setup Made Simple

One of the standout features in this release is the ability to set up Kubernetes resources directly from a new view inside Docker Desktop. This streamlined interface allows developers to configure pods, services, and deployments without leaving the Desktop environment. It’s a huge step toward making Kubernetes more approachable for teams who want to focus on building rather than wrestling with YAML files.

  1. Real-Time Kubernetes Monitoring

The new Kubernetes view also provides a live display of your cluster state. You can now see pods, services, and deployments update in real time, making it easier to spot issues, monitor workloads, and ensure everything is running smoothly.

  1. Smarter Dependency Management

Docker Desktop now integrates improvements with Kind (Kubernetes in Docker), ensuring that only required dependency images are pulled if they aren’t already available locally. This reduces unnecessary downloads and speeds up cluster setup.

  1. Updated Core Components
  • Docker Engine v28.5.2 ships with this release, ensuring stability and performance improvements.
  • Enhanced Linux kernel support for smoother Kubernetes operations.

Why This Matters

Kubernetes has a reputation for being complex for some people, but Docker Desktop 4.51.0 is working to change that. By embedding Kubernetes resource management and monitoring directly into the Desktop experience, Docker is lowering the barrier to entry for developers and teams. Whether you’re experimenting with microservices or managing production-like environments locally, these new features make Kubernetes more accessible and intuitive.

Getting Started

To try out these new features:

  1. Update to Docker Desktop 4.51.0.
  2. Open the new Kubernetes view to configure resources.
  3. Watch your pods, services, and deployments update in real time.

Update available with New Kubernetes UI
Click on Download Update

Click on Create Cluster

Here you can select a Single Node Cluster or with Kind a Multi-Node Cluster.
I selected for a Single node cluster.

Click on Install

Here is your Single Node Kubernetes Cluster running with version 1.34.1

Kubectl get nodes

My Nginx Container app is running on Kubernetes in Docker Desktop 😉

Final Thoughts

Docker Desktop 4.51.0 is more than just an incremental update — it’s a meaningful step toward bridging the gap between container development and Kubernetes orchestration. With simplified setup and real-time monitoring, developers can spend less time configuring and more time innovating. 🐳

Here you find more information about Docker Desktop and Kubernetes Clustering

 

✇mountainss Cloud and Datacenter Management Blog

Docker Desktop Container Images and Azure Cloud App Services

Docker Desktop and Azure App Cloud Services

Expanded Architecture: Docker developer environment with Azure Cloud Services.

Development Environment

  • Docker Desktop + Tools: Visual Studio Code, Azure CLI, Docker Scout, AI, MCP
  • Docker Scout CLI: Compares image versions, detects CVEs, integrates with pipelines

Container Host (Windows Server 2025 Core)

  • Hyper-V Isolated Containers: For enhanced security
  • Workloads: Microservices, legacy apps, AI containers
  • GitOps Operator: Automated deployment via Git repositories
  • Azure Arc Agent: Connects on-prem host to Azure Control Plane

Here you find more information about Docker on Windows Server 2025 Core

Your Windows 11 Laptop with Docker Desktop

☁ Azure Cloud Integrations

Component Function
Azure App Service (Docker) Hosts web apps as Docker containers with autoscaling and Key Vault integration
Azure DevOps + Pipelines CI/CD for image build, scan, push, and deployment
Azure Copilot Security AI-driven security recommendations and policy analysis
Azure Container Registry (ACR) Secure storage and distribution of container images
Azure Key Vault Secrets management: API keys, passwords, certificates
Microsoft Defender for Cloud Runtime protection, image scanning, threat detection
Azure Policy & RBAC Governance and access control
Azure Monitor + Sentinel Logging, metrics, threat detection
Azure Update Manager Hotpatching of Windows and container images without reboot

More information on Strengthening Container Security with Docker Hardened Images and Azure Container Registry

DevSecOps Workflow

  1. Build & Harden Image → Dockerfile + SBOM
  2. Scan with Docker Scout → CLI or pipeline
  3. Push to ACR → With signing and RBAC
  4. Deploy via Azure DevOps Pipelines → App Service or Arc-enabled host
  5. Inject Secrets via Key Vault → Automatically at runtime
  6. Monitor & Patch → Azure Monitor + Update Manager
  7. Audit & Alerting → Azure Sentinel + Defender
  8. Security Guidance → Copilot Security analyzes policies and offers recommendations

Example of Deploying a custom container to Azure App Service with Azure Pipelines

Microsoft Azure App Service is really scalable for Docker App Solutions:

Azure App Service is designed to scale effortlessly with your application’s needs. Whether you’re hosting a simple web app or a complex containerized microservice, it offers both vertical scaling (upgrading resources like CPU and memory) and horizontal scaling (adding more instances). With built-in autoscaling, you can respond dynamically to traffic spikes, scheduled workloads, or performance thresholds—without manual intervention or downtime.

From small startups to enterprise-grade deployments, App Service adapts to demand with precision, making it a reliable platform for modern, cloud-native applications.

Scale Up Features and Capacities Learn how to increase CPU, memory, and disk space by changing the pricing tier

Enable Automatic Scaling (Scale Out) Configure autoscaling based on traffic, schedules, or resource metrics

Per-App Scaling for High-Density Hosting Scale individual apps independently within the same App Service Plan

Conclusion

For modern developers, the combination of Azure App Services and Docker Desktop offers a powerful, flexible, and scalable foundation for building, testing, and deploying cloud-native applications.

  • Developers can build locally with Docker, ensuring consistency and portability.
  • Then deploy seamlessly to Azure App Services, leveraging its cloud scalability and integration.
  • This workflow reduces configuration drift, accelerates testing cycles, and improves team collaboration.

✇mountainss Cloud and Datacenter Management Blog

Windows Server 2025 Core and Docker – A Modern Container Host Architecture

As businesses race toward cloud-native infrastructure and microservices, Windows Server 2025 Core emerges as a lean, powerful platform for hosting Docker containers. With its minimal footprint and robust security posture, Server Core paired with Docker offers a compelling solution for modern application deployment.

Architecture Design: Windows Server Core + Docker

Windows Server 2025 Core is a headless, GUI-less version of Windows Server designed for performance and security. When used as a Docker container host, it provides:

  • Lightweight OS footprint: Reduces attack surface and resource consumption.
  • Hyper-V isolation: Enables secure container execution with kernel-level separation.
  • Support for Nano Server and Server Core images: Ideal for running Windows-based microservices.
  • Integration with Azure Kubernetes Service (AKS): Seamless orchestration in hybrid environments.

Key Components

Component Role in Architecture
Windows Server 2025 Core Host OS with minimal services
Docker Engine Container runtime for managing containers
Hyper-V Optional isolation layer for enhanced security
PowerShell / CLI Tools Management and automation
Windows Admin Center GUI-based remote management

Installation Guide

Setting up Docker on Windows Server 2025 Core is straightforward but requires precision. Here’s a simplified walkthrough:

Windows Server 2025 Datacenter Core running

  1. Install Required Features

Use PowerShell to install Hyper-V and Containers features:

Install-WindowsFeature -Name Hyper-V, Containers -IncludeManagementTools -Restart

  1. Install Docker

Download and install Docker from the official source or use the PowerShell script provided by Microsoft:

Invoke-WebRequest “https://download.docker.com/win/static/stable/x86_64/docker-28.4.0.zip&#8221; -OutFile “docker.zip”

Unzip and configure Docker as a service:

at Docker directory to your path

Add the Docker config directory

Set the daemon

Create the Docker Service

net start docker

docker version

Docker Host on Windows Server 2025 Core is Installed 😉

  1. Configure Networking

Ensure proper NAT or transparent networking for container communication.

  1. Pull Base Images

Use Docker CLI to pull Windows container images:

docker pull mcr.microsoft.com/windows/servercore:ltsc2025

  1. Test Deployment

Run a sample Windows Server 2025 core container:

docker run -it mcr.microsoft.com/windows/servercore:ltsc2025

Inside the Windows Server 2025 Core Container on the Docker host.

Best Practices

To maximize reliability, security, and scalability:

  • Use Hyper-V isolation for sensitive workloads.
  • Automate deployments with PowerShell scripts or CI/CD pipelines.
  • Keep base images updated to patch vulnerabilities.
  • Monitor containers using Azure Arc monitoring or Windows Admin Center.
  • Limit container privileges and avoid running as Administrator.
  • Use volume mounts for persistent data storage.

Conclusion: Why It Matters

For developers, Windows Server 2025 Core with Docker offers:

  • Fast iteration cycles with isolated environments.
  • Consistent dev-to-prod workflows using container images.
  • Improved security with minimal OS footprint and Hyper-V isolation.

For businesses, the benefits are even broader:

  • Reduced infrastructure costs via efficient resource usage.
  • Simplified legacy modernization by containerizing Windows apps.
  • Hybrid cloud readiness with Azure integration and Kubernetes support.
  • Scalable architecture for microservices and distributed systems.

Windows Server 2025 Core isn’t just a server OS—it’s a launchpad for modern, secure, and scalable containerized applications. Whether you’re a developer building the next big thing or a business optimizing legacy systems, this combo is worth the investment.

Integrating Azure Arc into the Windows Server 2025 Core + Docker Architecture for Adaptive Cloud

Overview

Microsoft Azure Arc extends Azure’s control plane to your on-premises Windows Server 2025 Core container hosts. By onboarding your Server Core machines as Azure Arc–enabled servers, you gain unified policy enforcement, monitoring, update management, and GitOps-driven configurations—all while keeping workloads close to the data and users.

Architecture Extension

  • Azure Connected Machine Agent
    Installs on Windows Server 2025 Core as a Feature on Demand, creating an Azure resource that represents your physical or virtual machine in the Azure portal.
  • Control Plane Integration
    Onboarded servers appear in Azure Resource Manager (ARM), letting you apply Azure Policy, role-based access control (RBAC), and tag-based cost tracking.
  • Hybrid Monitoring & Telemetry
    Azure Monitor collects logs and metrics from Docker Engine, container workloads, and host-level performance counters—streamlined into your existing Log Analytics workspaces.
  • Update Management & Hotpatching
    Leverage Azure Update Manager to schedule Windows and container image patches. Critical fixes can even be applied via hotpatching on Arc-enabled machines without a reboot.
  • GitOps & Configuration as Code
    Use Azure Arc–enabled Kubernetes to deploy container workloads via Git repositories, or apply Desired State Configuration (DSC) policies to Server Core itself.

Adaptive Cloud Features Enabled

  • Centralized Compliance
    Apply Azure Policies to enforce security baselines across every Docker host, ensuring drift-free configurations.
  • Dynamic Scaling
    Trigger Azure Automation runbooks or Logic Apps when performance thresholds are breached, auto-provisioning new container hosts.
  • Unified Security Posture
    Feed security alerts from Microsoft Defender for Cloud into Azure Sentinel, correlating threats across on-prem and cloud.
  • Hybrid Kubernetes Orchestration
    Extend AKS clusters to run on Arc-connected servers, enabling consistent deployment pipelines whether containers live on Azure or in your datacenter.

More information about Innovate on an Adaptive Cloud here

Integration Walkthrough

  1. Prepare your Server Core host (ensure Hyper-V, Containers, and Azure Arc Feature on Demand are installed).
  2. Install Azure Arc agent via Azure PowerShell
  3. In the Azure portal, navigate to Azure Arc > Servers, and verify your machine is onboarded.
  4. Enable Azure Policy assignments, connect to a Log Analytics workspace, and turn on Update Management.
  5. (Optional) Deploy the Azure Arc GitOps operator for containerized workloads across hybrid clusters.

Visualizing Azure Arc in Your Diagram

Above your existing isometric architecture, add a floating “Azure Cloud Control Plane” layer that includes:

  • ARM with Policy assignments
  • Azure Monitor / Log Analytics
  • Update Manager + Hotpatch service
  • GitOps repo integrations

Draw data and policy-enforcement arrows from this Azure layer down to your Windows Server Core “building,” Docker cube, container workloads, and Hyper-V racks—demonstrating end-to-end adaptive management.

Why It Matters

Integrating Azure Arc transforms your static container host into an adaptive cloud-ready node. You’ll achieve:

  • Consistent governance across on-prem and cloud
  • Automated maintenance with zero-downtime patching
  • Policy-driven security at scale
  • Simplified hybrid Kubernetes and container lifecycle management

With Azure Arc, your Windows Server 2025 Core and Docker container hosts become full citizens of the Azure ecosystem—securing, monitoring, and scaling your workloads wherever they run.

Better Together 🐳

 

✇mountainss Cloud and Datacenter Management Blog

Docker Scout, stripped down: comparing what changed and securing what matters (CLI only)

Docker Scout version 1.18.2

There’s a quiet moment after every deploy where you ask yourself: what actually changed? Not just the feature—you know that—but the stuff beneath it. Packages. Base images. Vulnerabilities that slipped in while you were busy shipping. Docker Scout’s CLI gives you the flashlight for that dark room. No dashboards. No detours. Just commands, signal, and the truth.

In July 2025 I wrote a blogpost about Docker Scout for Vulnerability management of Containers and remediation

Docker Scout Compare is quite significant for container security, especially in modern DevSecOps workflows. Here’s why it matters:

🔍 What Docker Scout Compare Does

  • Image Comparison: It analyzes two Docker images—typically a new build vs. a production version—and highlights differences in vulnerabilities, packages, and policies.
  • Security Insights: It identifies newly introduced CVEs (Common Vulnerabilities and Exposures), changes in package versions, and policy violations between image versions.
  • SBOM Integration: It uses Software Bill of Materials (SBOMs) to trace dependencies and match them against vulnerability databases.

🛡 Why It’s Important for Security

  • Proactive Risk Management: By comparing images before deployment, teams can catch regressions or newly introduced vulnerabilities early.
  • Supply Chain Transparency: Helps track changes across the container supply chain, which is crucial for preventing issues like Log4Shell.
  • CI/CD Integration: Fits seamlessly into automated pipelines, ensuring every image update is vetted for security before release.

⚙ Key Features That Boost Its Value

Feature Benefit
Continuous vulnerability scanning Keeps your images secure over time, not just at build time
Filtering options Focus on critical or fixable CVEs, ignore unchanged packages, etc.
Markdown/Text reports Easy to integrate into documentation or dashboards
Multi-stage build analysis Understand security across complex Dockerfiles

🧠 Bottom Line

If you’re serious about container security, Docker Scout Compare isn’t just helpful—it’s becoming essential. It gives developers and security teams a clear view of what’s changing and whether those changes introduce risk.

The heart of change: compare old vs new, precisely

You built a new image. What did you add? What did you remove? What got better—or worse?
Here are some Docker scout compare CLI commands:

# Compare prod vs new build

docker scout compare –to myapp:prod myapp:sha-123

# Focus on meaningful risk changes (ignore base image CVEs)

docker scout compare –to myapp:prod myapp:sha-123 –ignore-base

# Show only high/critical that are fixable

docker scout compare –to myapp:prod myapp:sha-123 –only-severity high,critical –only-fixed

# Fail when security gets worse (perfect for CI)

docker scout compare –to myapp:prod myapp:sha-123 –exit-on vulnerability

Here you find more about Docker Scout Compare 🐳

In my case I will do a Docker Scout compare between these two images:

docker scout compare –to azure-cli-patched:latest mcr.microsoft.com/azure-cli:azurelinux3.0

Compare results between the two images.

Compare results between the two images, here you see the Fixed vulnerability differences.

Conclusion

🔐 Final Thoughts: Docker Scout Compare CLI & Security

In today’s fast-paced development landscape, security can’t be an afterthought—it must be woven into every stage of the software lifecycle. Docker Scout Compare CLI empowers teams to do just that by offering a clear, actionable view of how container images evolve and what risks they may introduce. Its ability to pinpoint new vulnerabilities, track dependency changes, and integrate seamlessly into CI/CD pipelines makes it a vital tool for modern DevSecOps.

By embracing Docker Scout Compare, organizations move from reactive patching to proactive prevention—turning container security from a bottleneck into a strategic advantage. 🚀

✇mountainss Cloud and Datacenter Management Blog

Unlocking the Power of Microsoft Azure Storage Explorer: A Must-Have Tool for Azure Administrators

 

Microsoft Azure Storage Explorer version 1.39.1

Microsoft Azure Storage Explorer is a free, standalone application that streamlines how Azure Administrators interact with storage accounts. Whether you’re managing blobs, file shares, queues, or tables, this versatile tool brings consistency, speed, and clarity to every operation—far beyond what the Azure portal alone can provide.

Why Azure Storage Explorer Matters

Managing storage through the Azure portal is intuitive, but for heavy-duty or repetitive tasks, it falls short:

  • Manual clicks become tedious when transferring hundreds of files.
  • The web UI can feel sluggish on large containers.
  • Scripting small tasks often requires context switching between CLI and portal.

Azure Storage Explorer fills these gaps by offering:

  • A desktop client optimized for high-throughput transfers.
  • A unified interface for all storage types.
  • Built-in support for SAS tokens, Azure Active Directory, and emulator endpoints.

These capabilities translate into faster workflows and fewer mistakes.

Key Features and Advantages

  • Unified Storage View across Blob Containers, File Shares, Queues, and Tables.
  • High-Performance Data Transfers with parallel upload/download threads, drag-and-drop, and pause/resume support.
  • Fine-Grained Access Control via Azure AD, service principals, or SAS tokens.
  • Local Dev/Test Integration with Azurite and the legacy Storage Emulator.

Security and Compliance

Azure Storage Explorer adheres to Azure’s stringent security standards, ensuring your data remains protected at every stage:

  • Data Encryption
    • All data in transit is secured via HTTPS/TLS.
    • Data at rest uses Azure Storage Service Encryption (AES-256).
  • Authentication and Authorization
    • Native Azure Active Directory (AAD) integration for RBAC.
    • Support for service principals, managed identities, and SAS tokens.
    • Option to connect with access keys when needed.
  • Network Security
    • Compatible with private endpoints to restrict traffic to your Virtual Network.
    • Honors storage account firewall rules and trusted Microsoft services only.
  • Audit Logging and Monitoring
    • Leverage Azure Monitor’s diagnostic settings to capture Storage Explorer activity.
    • Integrate with Azure Sentinel or third-party SIEM tools for real-time alerts.
  • Compliance Certifications
    • Inherits Azure Storage’s compliance portfolio, including ISO, SOC, GDPR, and HIPAA standards.

Quick Comparison: Portal vs. Storage Explorer

Capability Azure Portal Azure Storage Explorer
Bulk Upload/Download Limited parallelism, manual UI High-performance parallelism
Authentication Methods Primarily Azure AD Azure AD, SAS, connection strings, emulator
Local Emulator Support Requires separate installation Native support for Azurite and emulator
CLI/Scripting Integration CLI or PowerShell separately Built-in scripting via PowerShell snippets
Cross-Subscription Browsing Tab per subscription All subscriptions in one pane

Real-World Scenarios

  1. Disaster Recovery Testing
    Quickly seed a secondary storage account from backups stored in local Azurite for non-production failover drills.
  2. Mass Data Migration
    Move terabytes of logs or media assets between subscriptions without crafting custom AzCopy scripts.
  3. Role-Based Troubleshooting
    Verify user permissions by connecting under different service principals, then audit and correct access policies on the fly.

Getting Started in Minutes

  1. Download & Install
    Grab the latest MSI/DMG from Microsoft’s official download page.
  2. Connect Your Account
    • Choose Azure AD for seamless single sign-on.
    • Or paste a SAS URL for granular, time-limited access.
  3. Explore & Operate
    • Expand subscriptions and storage accounts in the left pane.
    • Drag files into blob containers or right-click tables to run C# or PowerShell snippets.
  4. Automate Common Tasks
    • Record frequent operations as scripts.
    • Export and share connection profiles with your team for consistent setups.

Here you see the simple installation steps of Azure Storage Explorer:

Download Microsoft Azure Storage Explorer

Right click the file and run as Administrator.

This is for me only, so I clicked on Install for me only

Accept the agreement and click on Install

An old installation was detected on my machine, Setup will uninstall it before continuing.
Click on Next

Select your folder or keep it default and click on Next

Click on Next
When you don’t want a start Menu Folder mark the box on the left.

Click on Finish

Microsoft Azure storage Explorer.

Sign in with your Azure Account.

Select your Azure Environment and click on Next

Microsoft Azure Storage Explorer connected with your Azure Subscription.

 

Tips & Best Practices

  • Use AzCopy integration for scripting large-scale migrations and include –recursive for deep folder copies.
  • Leverage table filtering to preview query results before exporting datasets.
  • Keep your Storage Explorer version up to date—the team delivers monthly enhancements and bug fixes.
  • Store connection profiles in source control (encrypted) so every teammate uses the exact same environment.

Conclusion

Azure Storage Explorer transforms tedious, repetitive storage tasks into a seamless, high-speed experience. For any Azure Administrator juggling blobs, files, queues, or tables, it’s the go-to tool to boost productivity, ensure security, and tame your data sprawl.

Next Steps

  • Download Azure Storage Explorer and connect a demo subscription today.
  • Explore built-in script samples to automate your top five storage tasks.
  • Join the Azure Storage community on GitHub to suggest features or report issues.

More information about Azure Storage Explorer on Microsoft Learn

✇mountainss Cloud and Datacenter Management Blog

Docker Scout for Vulnerability management of Containers and remediation

I have installed the latest Docker Desktop for Windows version 4.43.2

In today’s cloud-native world, container security is not a luxury—it’s a mission-critical requirement. With the release of Azure Linux 3.0, Microsoft has reinforced its dedication to performance, flexibility, and security. But no matter how polished the host OS is, containers themselves can still be riddled with vulnerabilities, bloated layers, or sneaky outdated dependencies. That’s where Docker Scout and Open Source tool Dive come into play.

Docker Scout: Intelligence at Your Fingertips

Docker Scout introduces vulnerability detection into your CI/CD pipeline. For Azure Linux 3.0 containers, this means:

  • Real-Time Vulnerability Scanning: Scout analyzes your container image (including base layers) against CVE databases and flags known vulnerabilities.
  • Remediation Guidance: It doesn’t just scream “VULNERABLE!”—Scout offers actionable suggestions like switching to a newer base image or updating specific packages.
  • Policy Integration: You can define security policies (e.g., block images with critical CVEs) and automate enforcement in Azure DevOps or GitHub Actions.

In the following steps we will get the Microsoft Azure Linux 3.0 container and scan for security issues before we run the container.

Open Docker terminal
docker pull mcr.microsoft.com/azure-cli:azurelinux3.0

when you have pulled the image, you can do a quick scan with Docker Scout.
docker scout quickview mcr.microsoft.com/azure-cli:azurelinux3.0

docker scout cves mcr.microsoft.com/azure-cli:azurelinux3.0

Here you can see more information about the CVE’s.

Here you see the vulnerable package file and the fix for remediation.

Now we want to remediate this image with the update fix version 2.32.4 of this package. To do this, I made a directory docker fix with a dockerfile (without any extension) with the following commands :

———

# ⚙ Start met Azure CLI base image op Azure Linux 3.0
FROM mcr.microsoft.com/azure-cli:azurelinux3.0

# 🧰 Install Python and pip via tdnf
RUN tdnf install -y python3 python3-pip

# 🛠 Upgrade pip and install
RUN python3 -m pip install –no-cache-dir –upgrade –ignore-installed pip \
&& python3 -m pip install –no-cache-dir requests==2.32.4

# Remove old files
RUN rm -f /usr/lib/az/lib/python3.12/site-packages/requests-2.32.3.dist-info/METADATA

# 🔍 Verify 
RUN python3 -c “import requests; print(f’Requests versie: {requests.__version__}’)”

————-

With Open Source tool Dive you can have a look into the Docker image. This supported me because first I did only the install and upgrade of the file requests version 2.32.3 to fixed version 2.32.4. But then Docker Scout still see the vulnerability file in the image.

dive [Image]
So that’s why we remove it via the Dockerfile.

We now building a new image with this dockerfile :

docker buildx build –provenance=true –sbom=true -t azure-cli-patched:latest .

After a Docker Scout scan, there are zero vulnerabilities in the image now
and in the Container fixed version 2.32.4 is running.

Conclusion

Docker Scout represents a major leap forward in managing container security, efficiency, and reliability. By integrating seamlessly into the Docker ecosystem, it empowers developers to ship production-ready containers with confidence.

💡 Key Benefits

  • Security Insights: Automatically detects vulnerabilities, recommends fixes, and integrates with CVE databases.
  • Dependency Intelligence: Tracks changes and upgrades across your software stack to ensure compatibility and stability.
  • Image Comparison: Visualizes differences between builds—helping you pinpoint unintended changes and regressions.
  • Team Collaboration: Enables shared visibility across development pipelines, so teams can align on image quality and release standards.

In short, Docker Scout turns container image analysis into a proactive, collaborative part of modern DevOps. Whether you’re optimizing performance or hardening against threats, Scout puts you ahead of the curve.

 

 

 

✇mountainss Cloud and Datacenter Management Blog

Celebrating 15 Remarkable Years in the Microsoft MVP Community

Dear Community Members, Friends, and Colleagues,

As I mark my 15th anniversary in the Microsoft MVP program, I’m filled with immense gratitude, humility, and pride. What began as a passion for sharing knowledge and building connections has blossomed into a deeply rewarding journey—one shaped by innovation, collaboration, and the extraordinary people who make this community thrive.

Over these 15 years, I’ve had the privilege to learn from brilliant minds, contribute to inspiring projects, and witness the transformative power of technology firsthand. Whether through speaking engagements, blog posts, mentoring, or hands-on technical work, being part of the MVP program has continually deepened my commitment to empowering others and fostering open, inclusive collaboration.

To the community: thank you for challenging, supporting, and celebrating with me. Your curiosity, creativity, and kindness are what keep this ecosystem alive and forward-looking.

To Microsoft: thank you for the honor and trust. The MVP program is a unique platform that amplifies voices, nurtures growth, and builds bridges—not just between developers and users, but between ideas and action.

While this milestone is a moment to reflect, it’s also a reminder that there’s always more to explore, create, and share. I look forward to continuing this journey together—with the same spark, but even greater purpose.

With heartfelt appreciation,
James

Here are some photos with Awesome people that I have met during these years:

Here you see Vijay Tewari in the middle who nominated me for the first time 🙂
Damian Flynn on the left and me on the right are Microsoft MVPs for Virtual Machine Manager (VMM)
at that time in 2011.

Here you see Tina Stenderup-Larsen in the middle, she is amazing! A Great Microsoft Community Program Manager
supporting all the MVPs in the Nordics & Benelux doing an Awesome Job!
On the right is Robert Smit a Great Dutch MVP and friend.

Mister OMS alias Scripting Guy Ed Wilson.

When there is a Microsoft Windows Server event, there is Jeff Woolsey 😉
“The three Musketeers”

Meeting Brad Anderson, he had great lunch breaks interviews in his car
with Awesome people.

The Azure Stack Guys on the 25th MVP Global Summit 😊

Mister PowerShell Jeffrey Snover at the MVP Summit having fun 😂

Scott Guthrie meeting him at the Red Shirt Tour in Amsterdam.

Great to meet Yuri Diogenes in 2018 with his book Azure Security Center.
I know him from the early days with Microsoft Security, like ISA Server 😉

Mister Azure, CTO Mark Russinovich meeting at the MVP Global Summit in Redmond.
a Great Technical Fellow with Awesome Azure Adaptive Cloud Solution Talks!

Mister DevOps himself Donovan Brown in Amsterdam for DevOps Days

My friend Rick Claus Mister MS Ignite.

Mister Azure Corey Sanders at the MVP Summit.

Mister Channel 9, MSIgnite, AI Specialist Seth Juarez
He is a funny guy.

Meeting Scott Hanselman in the Netherlands together with MVP Andre van den Berg.
Scott is Awesome in developer innovations and technologies.
Following Azure Friday from the beginning.

Windows Insider friends for ever meeting Scott Hanselman.
With on the left MVP Erik Moreau.

Windows Insiders for Ever 💙
Here together with Dona Sarkar here in the Netherlands

Windows Insider Friends having fun with Ugly Sweater meeting.
On the right my friend Maison da Silva and on the upper right Erik Moreau and Andre van den Berg.
Friends for Life 💙

Microsoft Global MVP 15 Years Award disc is in the House 🫶
on Monday the 14th of July 2025.

Thank you All 💗

✇mountainss Cloud and Datacenter Management Blog

Strengthening Container Security with Docker Hardened Images and Azure Container Registry

In today’s cloud-native landscape, container security is paramount. IT professionals must strike a balance between agility and security, ensuring that applications run smoothly without exposing vulnerabilities. One way to achieve this is through Docker hardened images, which enhance security by reducing attack surfaces, enforcing best practices, and integrating with Microsoft Azure Container Registry (ACR) for seamless deployment.

Why Hardened Docker Images?

A hardened Docker image is optimized for security, containing only the necessary components to run an application while removing unnecessary libraries, binaries, and configurations. This approach reduces the risk of known exploits and ensures compliance with security standards. Key benefits include:

  • Reduced Attack Surface: Eliminating unnecessary components minimizes entry points for attackers.
  • Improved Compliance: Meets security benchmarks like CIS, NIST, and DISA STIG.
  • Enhanced Stability: Smaller images mean fewer dependencies, reducing vulnerabilities.
  • Better Performance: Optimized images lead to faster deployments and lower resource consumption.

Leveraging Azure Container Registry for Secure Image Management

Microsoft Azure Container Registry (ACR) plays a critical role in securely storing, managing, and distributing hardened images. IT professionals benefit from features such as:

  • Automated Image Scanning: Built-in vulnerability assessment tools like Microsoft Defender for Cloud detect security risks.
  • Content Trust & Signing: Ensures only authorized images are deployed.
  • Geo-replication: Enables efficient global distribution of container images.
  • Private Registry Access: Provides secure authentication via Azure Active Directory.

Microsoft Azure Container Registry

Hardened Images in Azure Container Solutions

By deploying hardened images through Azure Kubernetes Service (AKS), Azure Container Apps, and Azure Functions, organizations strengthen security in cloud-native applications while leveraging Azure’s scalability and flexibility. This translates to:

  • Improved Security Posture: Reducing exposure to common container-based threats.
  • Streamlined Operations: Consistent, automated deployment pipelines.
  • Efficient Cost Management: Optimized images lower compute and storage costs.

Strengthening Security with Docker Scout

Docker Scout is a powerful security tool designed to detect vulnerabilities in container images. It integrates seamlessly with Docker CLI, allowing IT professionals to:

  • Scan Images for CVEs (Common Vulnerabilities and Exposures): Identify security risks before deployment.
  • Receive Actionable Insights: Prioritized remediation recommendations based on severity.
  • Automate Security Checks: Continuous monitoring ensures compliance with security standards.
  • Integrate with Azure Container Registry (ACR): Scan images stored in ACR for proactive security management.

How It Works with Azure Container Solutions

By incorporating Docker Scout with Azure Container Registry (ACR), IT teams can establish a robust security workflow:

  1. Build & Harden Docker Images – Optimize base images to minimize attack surfaces.
  2. Scan with Docker Scout – Detect vulnerabilities in both public and private repositories.
  3. Push Secure Images to ACR – Ensure only validated, hardened images are stored.
  4. Deploy on Azure Container Solutions – Use AKS, Azure App Service, or Azure Functions with improved security confidence.
  5. Monitor & Automate Security Updates – Continuous scanning helps maintain container integrity.

Best Practices for IT Professionals

To maximize security, IT teams should adopt the following best practices:

  1. Use Minimal Base Images (Alpine, Distroless) to reduce attack surfaces.
  2. Regularly Update & Scan Images to patch vulnerabilities.
  3. Implement Role-Based Access Controls (RBAC) for container registries.
  4. Adopt Infrastructure as Code (IaC) to enforce secure configurations.
  5. Monitor & Audit Logs for anomalous activity detection.
  6. Automate Docker Scout scans in CI/CD pipelines.
  7. Enforce image signing & verification using Azure Key Vault.
  8. Regularly update base images & dependencies to mitigate risks.
  9. Apply role-based access controls (RBAC) within Azure Container Registry

Conclusion

Secure containerization starts with hardened Docker images and robust registry management. Azure Container Registry offers IT professionals the tools to maintain security while leveraging cloud efficiencies. By integrating these strategies within Azure’s ecosystem, organizations can build resilient and scalable solutions for modern workloads.
Docker Scout combined with Azure Container Registry provides IT professionals a strong security foundation for cloud-native applications. By integrating proactive vulnerability scanning into the development workflow, organizations can minimize risks while maintaining agility in container deployments.
When you work with artificial intelligence (AI) and Containers working with Model Context Protocol (MCP)
Security by Design comes first before you begin.

Here you find more information about MCP protocol via Docker documentation

 

 

✇mountainss Cloud and Datacenter Management Blog

Unleashing AI Development with Docker Desktop 4.41

Docker Desktop version 4.41 available

Unleashing AI Development with Docker Desktop 4.41: NVIDIA GPU Support and Model Runner Beta

The world of AI development is evolving rapidly, and Docker Desktop 4.41 is here to accelerate that journey. With the introduction of the Model Runner Beta and NVIDIA GPU support, Docker has taken a significant leap forward in making AI development more accessible, efficient, and integrated. Let’s dive into the highlights of this groundbreaking release.

What’s New in Docker Desktop 4.41?

Docker Desktop 4.41 introduces the Model Runner Beta, a feature designed to simplify the process of running and managing AI models locally. This release also brings NVIDIA GPU support to Windows users, enabling developers to harness the power of GPU acceleration for their machine learning tasks. Here’s a closer look at the key updates:

  1. Model Runner Beta:
    • The Model Runner Beta allows developers to run AI models as part of their Docker Compose projects. This integration streamlines the orchestration of model pulls and the injection of model runner services into applications.
    • A dedicated “Models” section in the Docker Desktop GUI provides a user-friendly interface for browsing, running, and managing models alongside containers, volumes, and images.
  2. NVIDIA GPU Support:
    • Windows users can now leverage NVIDIA GPUs for AI workloads, significantly boosting performance and reducing training times for machine learning models.
    • This feature is a game-changer for developers working on resource-intensive AI applications, as it enables seamless integration of GPU acceleration into their workflows.
  3. Enhanced Integration with Docker Compose and Testcontainers:
    • Docker Compose now supports the declaration of AI services within a single Compose file, allowing teams to manage models like any other service in their development environment.
    • Testcontainers integration extends testing capabilities to AI models, with initial support for Java and Go, making it easier to create automated tests for AI-powered applications.

Why This Matters for AI Developers

The introduction of the Model Runner Beta and NVIDIA GPU support in Docker Desktop 4.41 addresses several pain points faced by AI developers:

  • Simplified Workflows: By treating models as first-class artifacts, Docker enables developers to version, distribute, and deploy models using familiar tools and workflows.
  • Improved Performance: GPU acceleration ensures faster training and inference times, allowing developers to iterate and innovate more quickly.
  • Seamless Collaboration: The ability to push models directly to Docker Hub fosters collaboration and sharing across teams, eliminating the need for custom registries or additional infrastructure.

Getting Started with Docker Model Runner

Enable GPU-backed Inference

docker model status

docker model help

docker model pull ai/smollm2

ai/smollm2 model pulled successfully

docker model list

docker model run ai/smollm2

This is a small example, but it’s really fast with answering my questions 👍

The Future of AI Development with Docker

Docker Desktop 4.41 is more than just an update; it’s a step towards democratizing AI development. By integrating powerful tools like the Model Runner Beta and NVIDIA GPU support, Docker is empowering developers to build, test, and deploy AI applications with unprecedented ease and efficiency.

Whether you’re a seasoned AI researcher or a developer exploring the possibilities of machine learning, Docker Desktop 4.41 is your gateway to a faster, smarter, and more collaborative AI development experience.

Ready to transform your AI workflows? Dive into Docker Desktop 4.41 and experience the future of AI development today!

✇mountainss Cloud and Datacenter Management Blog

Happy Anniversary Day 50 years of Microsoft Innovation

50 years of Microsoft

A Legacy of Innovation and Transformation

Half a century ago, on April 4th, 1975, two young visionaries, Bill Gates and Paul Allen, co-founded Microsoft with a bold ambition: to make computing accessible and essential for everyone. What began as a small software company has grown into a global technology leader, continuously transforming industries and empowering billions of lives. As we celebrate Microsoft’s 50-year journey, let’s explore its milestones, innovations, and impact, including its contributions to datacenters, Windows Server, Hyper-V, Azure, and the leadership of its CEOs.

The Early Years: Coding the Future

Microsoft’s first big breakthrough came with the creation of an operating system for the fledgling personal computer market. In 1980, the company introduced MS-DOS, laying the groundwork for the revolutionary Windows operating system, launched in 1985. This graphical interface transformed computing, making it accessible to both businesses and individuals.

Guiding Microsoft Through Its Evolution: The CEOs Who Shaped the Company

Microsoft’s trajectory has been shaped by its visionary leadership. From the founders to the present, each CEO has left an indelible mark:

  1. Bill Gates (1975–2000): As co-founder and first CEO, Gates spearheaded the company’s initial growth, launching pivotal products like MS-DOS, Windows, and Office. His focus on innovation and accessibility built the foundation of Microsoft’s success.
  2. Steve Ballmer (2000–2014): During his tenure, Ballmer led Microsoft through massive expansion, particularly in enterprise solutions and cloud computing. He introduced Windows Server and laid the groundwork for services like Azure. Ballmer’s energy and passion defined his leadership style and kept Microsoft competitive in a rapidly changing market.
  3. Satya Nadella (2014–Present): Nadella ushered in a cloud-first, AI-driven era, transforming Microsoft’s culture and business model. His emphasis on inclusivity, empathy, and sustainability revitalized the company. Under his leadership, Azure became one of the world’s leading cloud platforms, and Microsoft made transformative acquisitions like LinkedIn, GitHub, and Activision Blizzard.

Lake Bill on Redmond Campus

Redefining Enterprise Technology: Datacenters, Windows Server, and Virtualization

As businesses increasingly relied on technology, Microsoft expanded its offerings to support enterprise needs. Windows Server, introduced in 1993, became a cornerstone for server management and networking. It evolved over the decades, incorporating features such as Active Directory, high availability, and security enhancements.

Microsoft played a pivotal role in virtualization with Hyper-V, launched in 2008. Hyper-V allowed organizations to maximize resource efficiency and reduce costs by running multiple virtual machines on a single physical server. Modern datacenters powered by Microsoft’s hardware and software solutions now form the backbone of its cloud services.

Embracing the Cloud: The Azure Revolution

Microsoft’s Azure cloud platform, launched in 2010, redefined computing. It enabled organizations to access scalable infrastructure, deploy applications globally, and harness artificial intelligence with ease. Azure spans over 60 regions worldwide, making it one of the most comprehensive cloud platforms. Its ecosystem includes hybrid cloud solutions, advanced analytics, and IoT technologies.

Gaming, Devices, and Consumer Innovation

Microsoft entered the gaming industry with the Xbox in 2001, creating a thriving gaming ecosystem. Beyond gaming, the company innovated with devices like the Surface lineup, combining sleek design with productivity. Its integration of hardware and software demonstrated Microsoft’s versatility.

Shaping the Future: AI, Sustainability, and Datacenters

Microsoft continues to lead in artificial intelligence with tools like Microsoft Copilot. Its pledge to be carbon-negative by 2030 highlights environmental responsibility, with sustainable datacenter operations playing a central role.

Conclusion: A Legacy Built to Inspire

Microsoft’s 50-year journey is a testament to the power of innovation and visionary leadership. From Bill Gates to Steve Ballmer to Satya Nadella, each CEO has steered the company to new heights. With contributions ranging from datacenters and Windows Server to Hyper-V and Azure, Microsoft’s impact has been profound. As the company looks ahead, it remains dedicated to empowering people and organizations to achieve more, ensuring the next 50 years are as groundbreaking as the last.

Here’s to Microsoft—a company built to inspire and shape the future.

at Building 92 of the Microsoft Campus in Redmond.

 

✇mountainss Cloud and Datacenter Management Blog

Exploring Docker Desktop 4.39.0 New Features and Enhancements

Docker Desktop for Windows update 4.39.0

Introduction
Docker Desktop 4.39.0 is here, bringing a host of new features designed to enhance developer productivity, streamline workflows, and improve security. This release continues Docker’s commitment to providing efficient, secure, and reliable tools for building, sharing, and running applications.

Key Features in Docker Desktop 4.39.0

  1. Docker AI Agent with Model Context Protocol (MCP) and Kubernetes Support
    • The Docker AI Agent, introduced in previous versions, has been upgraded to support MCP and Kubernetes. MCP enables AI-powered applications to access external data sources, perform operations with third-party services, and interact with local filesystems. Kubernetes support allows the AI Agent to manage namespaces, deploy services, and analyze pod logs.
  2. General Availability of Docker Desktop CLI
    • The Docker Desktop CLI is now officially available, offering developers a powerful command-line interface for managing containers, images, and volumes. The new docker desktop logs command simplifies log management.
  3. Platform Flag for Multi-Platform Image Management
    • Docker Desktop now supports the –platform flag on docker load and docker save commands, enabling seamless import and export of multi-platform images.
  4. Enhanced Containerization Across Programming Languages
    • The Docker AI Agent can now containerize applications written in JavaScript, Python, Go, C#, and more. It analyzes projects to identify services, programming languages, and package managers, making containerization effortless.
  5. Security Improvements
    • Docker Desktop 4.39.0 addresses critical vulnerabilities, such as CVE-2025-1696, ensuring proxy authentication credentials are no longer exposed in plaintext.

Docker Scout Security

Why These Features Matter

  • Developer Productivity: The upgraded Docker AI Agent simplifies container management and troubleshooting, saving developers time and effort.
  • Multi-Platform Flexibility: The –platform flag ensures compatibility across diverse environments, making Docker Desktop a versatile tool for modern development.
  • Enhanced Security: By addressing vulnerabilities, Docker Desktop 4.39.0 reinforces its position as a secure platform for application development.

Conclusion
Docker Desktop 4.39.0 is a significant step forward, offering smarter tools, improved security, and greater flexibility for developers. Whether you’re managing Kubernetes clusters or containerizing applications, this release has something for everyone.

For more details, you can explore the official Docker blog or the release notes

 

✇mountainss Cloud and Datacenter Management Blog

Docker Desktop Update version 4.38.0 with Kubernetes Multi-Node feature

Install the Newest Docker Desktop version 4.38.0

Docker released a New Docker Desktop version 4.38.0 with new features:

  • nstalling Docker Desktop via the PKG installer is now generally available.
  • Enforcing sign-in via configuration profiles is now generally available.
  • Docker Compose, Docker Scout, the Docker CLI, and Ask Gordon can now be updated independently of Docker Desktop and without a full restart (Beta).
  • The new update command has been added to the Docker Desktop CLI (Mac only).
  • Bake is now generally available, with support for entitlements and composable attributes.
  • You can now create multi-node Kubernetes clusters in Docker Desktop.
  • Ask Gordon is more widely available. It is still in Beta.

In the following steps I’m upgrading my Docker Desktop Kubernetes 1-Node Cluster to a 4-Node Kubernetes Cluster:

Go to Settings in Docker Desktop and click on Kubernetes

Click on Kind.
Here you can select the Kubernetes version and how much nodes you need.

IMPORTANT: This will create a new Kubernetes Cluster!
(the old 1-node cluster will be gone)

Creating 4-Node Kubernetes Cluster in Docker Desktop

4-Node Kubernetes Cluster running in Docker Desktop

When you have “Show System Containers” in Settings at Kubernetes on
then you see these 4-Nodes here in VSCode.

Happy Coding 🐳

 

✇mountainss Cloud and Datacenter Management Blog

Revolutionizing Hybrid Cloud Storage with Azure Container Storage Enabled by Azure Arc

In the dynamic world of cloud computing, Microsoft continues to innovate with solutions that empower organizations to manage hybrid and multi-cloud environments effectively. One such groundbreaking solution is Azure Container Storage enabled by Azure Arc. This technology is designed to simplify and enhance the management of persistent storage for Kubernetes clusters, providing a unified and adaptive approach to cloud storage.

What is Azure Container Storage Enabled by Azure Arc?

Azure Container Storage enabled by Azure Arc is a first-party storage system designed for Arc-connected Kubernetes clusters. It serves as a native persistent storage solution, offering high availability, fault tolerance, and seamless data synchronization to Azure Blob Storage. This system is crucial for making Kubernetes clusters stateful, especially for Azure IoT Operations and other Arc services.

Key Features and Benefits

  1. High Availability and Fault Tolerance: When configured as a 3-node cluster, Azure Container Storage enabled by Azure Arc replicates data between nodes (triplication) to ensure high availability and tolerance to single node failures.
  2. Data Synchronization to Azure: Data written to volumes is automatically tiered to Azure Blob Storage, including block blob, ADLSgen-2, or OneLake. This ensures that data is securely stored and easily accessible in the cloud.
  3. Low Latency Operations: Arc services, such as Azure IoT Operations, can expect low latency for read and write operations, making it ideal for real-time applications.
  4. Simple Connection: Customers can easily connect to an Azure Container Storage enabled by Azure Arc volume using a CSI driver to start making Persistent Volume Claims against their storage.
  5. Flexibility in Deployment: Azure Container Storage enabled by Azure Arc can be deployed as part of Azure IoT Operations or as a standalone solution, providing flexibility to meet various deployment needs.
  6. Platform Neutrality: This storage system can run on any Arc Kubernetes supported platform, including Ubuntu + CNCF K3s/K8s, Windows IoT + AKS-EE, and Azure Stack HCI + AKS-HCI and Azure Local.

Microsoft Azure Local solution

 

Azure Container Storage Offerings

Azure Container Storage enabled by Azure Arc offers two main storage options:

  1. Cache Volumes: The original offering, providing a reliable and fault-tolerant file system for Arc-connected Kubernetes clusters.
  2. Edge Volumes: The newest offering, which includes Local Shared Edge Volumes and Cloud Ingest Edge Volumes. Local Shared Edge Volumes provide highly available, failover-capable storage local to your Kubernetes cluster, while Cloud Ingest Edge Volumes facilitate limitless data ingestion from edge to Blob storage.

Use Cases and Applications

Azure Container Storage enabled by Azure Arc is particularly beneficial for organizations with hybrid and multi-cloud environments. It supports various use cases, including:

  • IoT Applications: Ensuring data integrity and synchronization in disconnected environments, making it ideal for IoT operations.
  • Edge Computing: Providing local storage for scratch space, temporary storage, and locally persistent data unsuitable for cloud destinations.
  • Data Ingestion: Facilitating seamless data transfer from edge to cloud, optimizing local resource utilization and reducing storage requirements.

Conclusion

Azure Container Storage enabled by Azure Arc represents the future of hybrid cloud storage, offering seamless onboarding, unified management, and adaptive capabilities. By leveraging this technology, organizations can overcome the challenges of hybrid and multi-cloud environments, streamline operations, and drive innovation.

Whether you’re just starting your cloud journey or looking to optimize your existing infrastructure, Azure Container Storage enabled by Azure Arc provides the tools and guidance you need to succeed. Embrace the power of this transformative solution and unlock new possibilities for your organization.

Jumpstart Drops is a good begin in your test environment, before you begin in production. Here you find a Jump start drop about “Create an Azure Container Storage enabled by Azure Arc Edge Volumes with CloudSync” by Anthony Joint.

More information:

Introducing Azure Local by Cosmos Darwin

Microsoft Adaptive Cloud

Announcement! Edge Storage Accelerator YouTube video. 

What is Microsoft Azure Arc Services?

❌