Skip to main content

Installing Podman Desktop and Podman on Windows

Installing Podman Desktop

To install Podman Desktop:

  1. Download the Windows installer.

  2. To start the Podman Desktop installer, open the downloaded file.

    Podman Desktop Setup installing

Alternate installation methods:

  • Silent Windows installer
  • Chocolatey
  • Scoop
  • Winget

Silent Windows installer

  1. Download the Windows installer.

  2. To install without user interaction, run the Windows installer with the silent flag /S from the Command Prompt:

    > podman-desktop-1.6.4-setup-x64.exe /S

Chocolatey

  1. Install the Chocolatey package manager.

  2. Install from the terminal:

    > choco install podman-desktop

Scoop package manager for Windows

  1. Install the Scoop package manager.

  2. Install from the terminal:

    > scoop bucket add extras
    > scoop install podman-desktop

Winget

  1. Install the Winget Package manager for Windows.

  2. Install from the terminal:

    > winget install -e --id RedHat.Podman-Desktop

Installing Podman

On Windows, running the Podman container engine requires running a Linux distribution on a virtual machine.

Use WSL2 as machine provider

Podman Desktop creates a Windows Subsystem for Linux version 2 (WSL 2) virtual machine: the Podman Machine.

Main benefits are:

  • Ease of use.
  • WSL 2 native virtualization performance.

Check that your environment has:

To install the Podman Machine:

  1. To prepare your system, enable the WSL feature, without installing the default Ubuntu distribution of Linux.

    Open the Command Prompt, and run:.

    > wsl --install --no-distribution
  2. Restart your computer.

  3. The Dashboard screen displays: Podman needs to be set up.

    Podman needs set up screen

    Click the Set up button.

    Review and validate all confirmation screens to set up the Podman Machine.

    When necessary, follow the instructions to install system prerequisites.

To verify that Podman is set up:

  • In the Dashboard, the Podman tile displays Podman is running.

    Podman is running screen

Use Hyper-V as machine provider

In order to tell podman to use Hyper-V when creating a podman machine, one needs to setup either:

  • environment variable: CONTAINERS_MACHINE_PROVIDER=hyperv on the terminal session or as system environment variable. OR
  • configure containers.conf file attribute provider before creating a machine, the file might be placed under AppData: C:\Users\myuser\AppData\Roaming\containers\containers.conf
cat C:\Users\myuser\AppData\Roaming\containers\containers.conf
[machine]

provider = "hyperv"
...

Succesfull setup should show string like this in the start up log:

time="2023-05-09T21:16:08+03:00" level=debug msg="Using Podman machine with `hyperv` virtualization provider"

Full example then could looks like this, open powershell with admin provileges:

PS C:\Windows\system32> $env:CONTAINERS_MACHINE_PROVIDER = 'hyperv'
PS C:\Windows\system32> $env:CONTAINERS_MACHINE_PROVIDER
hyperv

# or alternatively
# [System.Environment]::SetEnvironmentVariable('CONTAINERS_MACHINE_PROVIDER','hyperv')
# [System.Environment]::GetEnvironmentVariable('CONTAINERS_MACHINE_PROVIDER)

podman machine init
podman machine start

Next steps