Aller au contenu principal
Retour au blog

Docker Desktop 4.37 : Ask Gordon et l'AI Catalog pour les devs PHP

Flavien Métivier17 décembre 20245 min

Docker Desktop 4.37 ne ressemble pas à un patch de fin d'année. Annoncé pour le 18 décembre 2024, il marque un virage assumé vers l'IA avec deux nouveautés structurantes : Ask Gordon — un assistant qui voit exactement ce qui tourne sur ta machine — et l'AI Catalog, qui distribue des modèles LLM comme de simples images Docker. Pour les équipes PHP qui dockerisent leurs environnements de développement, certains de ces ajouts sont opérationnels dès maintenant ; d'autres dessinent ce que sera le quotidien en 2025.

Ask Gordon : l'assistant IA qui connaît ton contexte Docker

Ask Gordon est accessible directement depuis le dashboard Docker Desktop 4.37 — bouton dédié dans l'interface, contexte de tes containers et images automatiquement injecté. Le différenciateur par rapport à un LLM généraliste : Gordon voit ce qui tourne sur ta machine. Il connaît l'état de tes containers, peut lire les logs en direct et proposer des diagnostics sans que tu aies à copier-coller quoi que ce soit.

Concrètement, pour une équipe PHP qui débogue un crash PHP-FPM, le workflow change : tu cliques sur Ask Gordon depuis le container concerné, et il reçoit déjà les métadonnées. Tu poses ta question en langage naturel. Gordon reste un assistant généraliste — il ne connaît pas ton domaine métier — mais sur les questions d'infrastructure Docker, c'est un gain de plusieurs minutes par incident.

  • Diagnostiquer un OOM kill sur un container PHP-FPM (image trop lourde, memory_limit mal calibré)
  • Expliquer pourquoi un build échoue à cause de conflits de layers
  • Suggérer des optimisations sur un Dockerfile existant
  • Orienter sur une config réseau Docker Compose qui ne résout pas correctement

La bêta a ses limites : Gordon n'a pas accès aux systèmes de fichiers de tes containers, et ses réponses sur des stacks applicatives complexes (Symfony + Doctrine + Redis + Mercure) restent génériques. Mais pour le debug infra pur, c'est déjà le niveau d'un bon copilote.

L'AI Catalog : des modèles LLM packagés comme des images Docker

L'AI Catalog est l'autre nouveauté structurante. L'idée : distribuer des modèles IA — LLM, embeddings, vision — sous forme d'images Docker, que tu pull et lances comme n'importe quel service. C'est une réponse directe à la fragmentation de l'écosystème IA local (Ollama, LM Studio, llama.cpp) en intégrant la distribution dans l'infrastructure Docker Hub que tu connais déjà.

# Récupérer un modèle depuis l'AI Catalog (Docker Desktop 4.37, décembre 2024)
docker model pull ai/llama3.2

# Lancer le modèle comme un service local
docker model run ai/llama3.2
# → expose une API OpenAI-compatible sur localhost:12434

Ce qui change pour PHP : tu peux appeler ce modèle local depuis n'importe quelle application Symfony 7.2 via une API compatible OpenAI, sans que tes données quittent le réseau, sans coût par token.

<?php
// PHP 8.4 — appel vers un modèle local via l'AI Catalog
// API OpenAI-compatible, port 12434 par défaut

$client = new \GuzzleHttp\Client([
    'base_uri' => 'http://localhost:12434/engines/llama3.2/v1/',
    'timeout'  => 30.0,
]);

$response = $client->post('chat/completions', [
    'json' => [
        'model'    => 'llama3.2',
        'messages' => [
            [
                'role'    => 'user',
                'content' => 'Classe ce ticket support en : bug, feature, question.',
            ],
        ],
    ],
]);

$data = json_decode($response->getBody()->getContents(), true);
echo $data['choices'][0]['message']['content'];

Votre équipe utilise Claude Code ?

Découvrir le workshop

La contrepartie est honnête : les modèles locaux de décembre 2024 restent en retrait sur Claude 3.5 Sonnet ou GPT-4o pour les tâches complexes. Et il faut de la RAM — un Llama 3.2 7B mobilise environ 6 Go, un 13B autour de 10 Go. Sur une machine de dev bien équipée, c'est raisonnable. Pour des cas d'usage simples — classification de tickets, extraction d'entités, résumé de documents internes — le rapport qualité/confidentialité est excellent.

CLI Controller bêta : scripter Docker Desktop sans passer par l'UI

Docker Desktop 4.37 introduit aussi le CLI controller en bêta. Jusqu'ici, certaines configurations de Docker Desktop — gestion des contextes avancés, paramètres du moteur — n'étaient accessibles que via l'interface graphique, ce qui bloquait l'automatisation dans des pipelines CI ou des scripts d'onboarding d'équipe.

# CLI controller bêta — gestion de contexte scriptable
docker desktop context create staging-php \
  --description "Contexte staging Symfony 7.2" \
  --docker "host=tcp://staging.example.com:2376,cert=/certs/client"

# Basculer de contexte en une ligne dans un script CI
docker context use staging-php
docker compose -f docker-compose.staging.yml up -d

# Lister les contextes disponibles
docker context ls

C'est encore bêta, la surface de commandes couverte est partielle, mais la direction est claire : Docker veut que tout ce qui est faisable dans l'UI soit scriptable en CLI. Pour les projets PHP avec plusieurs environnements (local, staging, prod), la capacité à basculer de contexte proprement dans un Makefile ou un script d'onboarding est un vrai confort opérationnel.

Ce que ça change — et ce que ça ne change pas encore — pour les équipes PHP

  • Tes Dockerfiles PHP existants ne changent pas : 4.37 n'impacte pas le runtime, seulement le tooling Desktop
  • PHP 8.4 (GA le 21 novembre 2024) et Symfony 7.2 fonctionnent sans modification avec ces nouvelles features
  • Ask Gordon est utile dès maintenant pour le debug infra — pas pour les questions métier applicatif
  • L'AI Catalog est pertinent si tu veux du LLM local sans dépendance externe ni fuite de données — prévois de la RAM
  • Le CLI controller simplifiera les pipelines qui manipulent des contextes Docker, à surveiller pour la GA

Docker Desktop 4.37 n'est pas une révolution du runtime — tes images PHP tournent exactement comme avant. C'est une couche d'outillage IA qui s'ajoute au-dessus, encore en bêta mais déjà fonctionnelle. Le signal fort : Docker se positionne désormais comme un hub pour distribuer et exécuter de l'IA localement, pas seulement des applications web. Les équipes qui intègrent aujourd'hui des LLM dans leurs applications Symfony ont une infrastructure de distribution familière pour le faire.

Si tu veux évaluer ce que l'IA locale peut faire concrètement dans ton stack PHP/Symfony — classification de données, génération assistée, intégration de LLM dans tes services Doctrine — un Bear Scan peut cartographier les opportunités réelles et les prérequis infra avant d'investir du temps d'équipe. Parlons-en.

Cet article vous a plu ? Partagez-le !

Votre équipe utilise Claude Code ?

Workshop intensif : votre équipe opérationnelle en 1 jour.