Aller au contenu

Installation

Prérequis

Serveur de déploiement (Windows)

Composant Version minimale Rôle
Windows Server 2019/2022 ou Windows 10/11 Héberge l'API et les partages
PowerShell 5.1 ou 7+ Moteur de scripts
Windows ADK 10.1.26100 (2024) Outils DISM, MakeWinPEMedia
WinPE Add-on pour l'ADK Même version que l'ADK Fichiers WinPE de base
Module Pode 2.x Serveur API REST
Docker Desktop (optionnel) 24+ Interface Web (conteneur Linux)

Machine Linux / Docker (interface web)

Composant Version minimale
Docker Engine 24+
Docker Compose 2.x

Partages réseau

Les partages suivants doivent être accessibles depuis toutes les machines déployées, WinPE inclus :

\\SERVEUR\Images       → fichiers .wim
\\SERVEUR\Deploy       → séquences, profils, catalogue, scripts runtime
\\SERVEUR\Drivers      → drivers organisés par modèle
\\SERVEUR\Logiciels    → installeurs (.msi, .exe, .msp)
\\SERVEUR\Scripts      → scripts PowerShell post-déploiement
\\SERVEUR\Logs         → journaux de déploiement

Installation des composants Windows

1. Windows ADK et le WinPE Add-on

Télécharger les deux packages depuis Microsoft :

https://learn.microsoft.com/en-us/windows-hardware/get-started/adk-install

Installer dans cet ordre :

  1. Windows ADK (adksetup.exe) — cocher uniquement « Deployment Tools ». Chemin par défaut : C:\Program Files (x86)\Windows Kits\10\...
  2. WinPE Add-on (adkwinpesetup.exe) — même version que l'ADK ci-dessus.

2. Module Pode

Install-Module Pode -Scope CurrentUser -Force

3. Déployer PSWinDeploy lui-même

Import-Module .\PSWinDeploy.psd1 -Force
pwsh -File .\Initialize-PSWinDeploy.ps1

Initialize-PSWinDeploy.ps1 lance un menu console interactif pour configurer les partages, le coffre de secrets, et construire l'image WinPE initiale.

Installation de l'interface web (Linux / Docker)

cd PSWinDeploy/Web
cp .env.example .env

Éditer .env :

VITE_API_URL=http://192.168.1.10:8080

Remplacer 192.168.1.10 par l'adresse IP ou le nom DNS du serveur Windows hébergeant l'API.

docker-compose up -d
docker-compose ps
docker-compose logs -f pswindeploy-web

L'interface est alors accessible sur http://IP-DOCKER-HOST:3000.

Démarrer l'API en tant que service Windows

pwsh -File .\API\Deploy-API.ps1 -Port 8080

En production, il est recommandé de l'exécuter en tant que véritable service Windows via NSSM :

nssm install PSWinDeployAPI `
    "C:\Program Files\PowerShell\7\pwsh.exe" `
    "-NonInteractive -File C:\Deploy\API\Deploy-API.ps1 -Port 8080"
nssm set PSWinDeployAPI AppDirectory C:\Deploy
nssm start PSWinDeployAPI

HTTPS est aussi supporté directement par le script de l'API :

pwsh -File .\API\Deploy-API.ps1 -Port 8443 -Https `
    -CertPath 'C:\Certs\pswindeploy.pfx' -CertPassword 'MotDePasseCert'