Tout Docker

Ce modèle vous permet de déployer à la fois des conteneurs Docker accélérés par GPU, comme ComfyUI, et des conteneurs sans prise en charge du GPU, tels que n8n. Cette flexibilité permet une large gamme d'applications, allant de la génération d'images par IA aux flux de travail automatisés, le tout dans un environnement unique et gérable. Configurez et exécutez vos conteneurs Docker souhaités sans effort, en tirant parti de la puissance et de la commodité de ce modèle polyvalent.

Bien que vous puissiez préférer gérer directement les configurations Docker, nous vous recommandons d'utiliser notre modèle "Any Docker". pour la configuration initialeLa configuration de Docker avec le support GPU peut être complexe, et ce modèle offre une base simplifiée pour construire et déployer vos conteneurs.

⚠️ Considération importante pour les conteneurs Docker multiples !

Pour garantir le bon fonctionnement lors de l’exécution de plusieurs conteneurs Docker sur votre serveur GPU, il est essentiel d’attribuer à chaque conteneur un nom et un répertoire de données uniques. Par exemple, au lieu d’utiliser « my_docker_container », spécifiez un nom tel que « my_comfyui_container » et définissez le répertoire de données sur un chemin unique tel que /home/trooperai/docker_comfyui_dataCette simple étape permettra à plusieurs conteneurs Docker de s'exécuter sans conflit.


Exemple : Exécution de Qdrant sur un serveur GPU

Qdrant est une base de données vectorielle haute performance qui prend en charge la recherche de similarité, la recherche sémantique et les embeddings à grande échelle.
Déployé sur un serveur Trooper.AI équipé d'un GPU, Qdrant peut indexer et rechercher des millions de vecteurs extrêmement rapidement — idéal pour les systèmes RAG, la mémoire des LLM, les moteurs de personnalisation et les systèmes de recommandation.

Le guide suivant montre comment exécuter Qdrant via Docker, comment il apparaît dans le tableau de bord, et comment l'interroger correctement Node.js.

Exécution du conteneur Docker Qdrant

Vous pouvez facilement exécuter l’image officielle qdrant/qdrant Conteneur Docker avec les paramètres indiqués ci-dessous.
Ces captures d'écran montrent une configuration typique utilisée sur les serveurs GPU Trooper.AI, notamment :

  • Port REST API exposé
  • Accès au tableau de bord
  • Persistance des données
  • Accélération GPU optionnelle (si activée dans votre environnement)

qdrant config settings for docker 1/2
paramètres de configuration Qdrant pour Docker 1/2

qdrant config settings for docker 2/2
paramètres de configuration qdrant pour docker 2/2

Une fois lancé, vous aurez un accès immédiat à la fois au Tableau de bord Qdrant et le API REST.

Aperçu du tableau de bord Qdrant

Le tableau de bord vous permet d’inspecter les collections, les vecteurs, les charges utiles et les index.
Une configuration de tableau de bord typique ressemble à ceci :

Quadrant dashboard
Tableau de bord Qdrant

À partir d'ici, vous pouvez :

  • Créer des collections
  • Ajouter des vecteurs
  • Effectuer des recherches d'exemple
  • Inspecter les métadonnées
  • Surveiller les performances

Interrogation de Qdrant depuis Node.js

Voici un fonctionnel et corrigé Exemple Node.js utilisant l'API REST de Qdrant.

Corrections importantes par rapport à l'exemple original :

  • Qdrant nécessite d'appeler une endpoint comme :
    /collections/<collection_name>/points/search
  • vector doit être un tableau, pas (a, b, c)
  • Node.js moderne dispose de fonctionnalités natives fetch, donc pas besoin de node-fetch

EXEMPLE NODEJS

javascript
// Qdrant Vector Search Example – fully compatible with Qdrant 1.x and 2.x

async function queryQdrant() {
  // Replace "my_collection" with your actual collection name
  const url = 'https://AUTOMATIC-SECURE-URL.trooper.ai/collections/my_collection/points/search';

  const payload = {
    vector: [0.1, 0.2, 0.3, 0.4],  // Must be an array
    limit: 5
  };

  try {
    const response = await fetch(url, {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json'
      },
      body: JSON.stringify(payload)
    });

    if (!response.ok) {
      throw new Error(`Qdrant request failed with status: ${response.status}`);
    }

    const data = await response.json();
    console.log('Qdrant Response:', data);
    return data;

  } catch (error) {
    console.error('Error querying Qdrant:', error);
    return null;
  }
}

queryQdrant();

Charge utile de recherche Qdrant valide

Qdrant s'attend à un corps JSON comme ceci :

json
{
  "vector": [0.1, 0.2, 0.3, 0.4],
  "limit": 5
}

Où :

  • vecteur → votre intégration
  • limite → nombre maximal de résultats retournés

Vous pouvez également ajouter des filtres avancés si nécessaire :

json
{
  "vector": [...],
  "limit": 5,
  "filter": {
    "must": [
      { "key": "category", "match": { "value": "news" } }
    ]
  }
}

Notes pour les utilisateurs de Trooper.AI

  • Remplacez AUTOMATIC-SECURE-URL.trooper.ai avec votre point de terminaison sécurisé alloué
  • Assurez-vous que votre collection existe avant d'effectuer une requête.

Exemple : Exécuter N8N avec Any Docker

Dans cet exemple, configurons Any Docker avec votre configuration pour N8N et le stockage persistant des données afin que les redémarrages soient possibles avec des données intactes. Cette configuration n'inclut pas les webhooks. Si vous avez besoin de webhooks, accédez au modèle préconfiguré dédié : n8n

Ce guide est fourni à titre explicatif uniquement. Vous pouvez démarrer n'importe quel conteneur Docker que vous souhaitez.

Veuillez consulter les captures d’écran de la configuration ci-dessous :

N8N any docker setup 1/4
Configuration Docker N8N 1/4

N8N any docker setup 2/4
Configuration Docker N8N 2/4

N8N any docker setup 3/4
Configuration N8N Docker 3/4

N8N any docker setup 4/4 - result
Configuration N8N Docker 4/4 - résultat

La commande Docker « Sous le capot »

Ce modèle automatise la configuration complète d'un conteneur Docker compatible GPU, y compris l'installation de tous les paquets Ubuntu et des dépendances nécessaires pour le support NVIDIA GPU. Cela simplifie le processus, en particulier pour les utilisateurs habitués aux déploiements Docker pour les serveurs web, qui nécessitent souvent une configuration plus complexe.

Ce qui suit docker run La commande est générée automatiquement par le modèle pour lancer votre conteneur GPU choisi. Elle encapsule tous les paramètres nécessaires pour des performances optimales et la compatibilité avec votre serveur Trooper.AI.

Cette commande sert d'exemple illustratif pour donner aux développeurs un aperçu des processus sous-jacents :

bash
docker run -d \
  --name ${CONTAINER_NAME} \
  --restart always \
  --gpus ${GPUS} \
  --add-host=host.docker.internal:host-gateway \
  -p ${PUBLIC_PORT}:${DOCKER_PORT} \
  -v ${LOCAL_DATA_DIR}:/home/node/.n8n \
  -e N8N_SECURE_COOKIE=false \
  -e N8N_RUNNERS_ENABLED=true \
  -e N8N_HOST=${N8N_HOST} \
  -e WEBHOOK_URL=${WEBHOOK_URL} \
  docker.n8n.io/n8nio/n8n \
  tail -f /dev/null

N'utilisez pas cette commande manuellement si vous n'êtes pas un expert Docker ! Faites simplement confiance au modèle.

Que permet N8N sur le serveur GPU privé ?

n8n débloque le potentiel d'exécution de workflows complexes directement sur votre serveur GPU Trooper.AI. Cela signifie que vous pouvez automatiser des tâches impliquant le traitement d'images/vidéos, l'analyse de données, les interactions avec les LLM, et plus encore – en tirant parti de la puissance du GPU pour des performances accélérées.

Plus précisément, vous pouvez exécuter des workflows pour :

  • Manipulation d'images/vidéos : Automatiser le redimensionnement, l'ajout de filigranes, la détection d'objets et d'autres tâches visuelles.
  • Traitement des données : Extraire, transformer et charger des données provenant de diverses sources.
  • Intégration LLM : Connectez-vous et interagissez avec des modèles de langage volumineux pour des tâches telles que la génération de texte, la traduction et l'analyse des sentiments.
  • Automatisation Web : Automatisez les tâches sur différents sites web et API.
  • Flux de travail personnalisés : Créez et déployez tout processus automatisé adapté à vos besoins.

Gardez à l’esprit que vous devrez installer des outils d’IA tels que ComfyUI et Ollama pour les intégrer à vos flux de travail N8N sur le serveur localement. Vous aurez également besoin de suffisamment de VRAM GPU pour alimenter tous les modèles. Ne donnez pas ces GPU au conteneur Docker exécutant N8N.

Qu'est-ce que Docker en termes de serveur GPU ?

Sur un serveur GPU Trooper.AI, Docker vous permet de conditionner vos applications avec leurs dépendances dans des unités standardisées appelées conteneurs. Ceci est particulièrement puissant pour les charges de travail accélérées par GPU car cela assure la cohérence entre les différents environnements et simplifie le déploiement. Au lieu d'installer les dépendances directement sur le système d'exploitation hôte, les conteneurs Docker incluent tout ce dont une application a besoin pour fonctionner – y compris les bibliothèques, les outils système, l'environnement d'exécution et les paramètres.

Pour les applications GPU, Docker vous permet d'utiliser efficacement les ressources GPU du serveur. En utilisant NVIDIA Container Toolkit, les conteneurs peuvent accéder aux GPU de l'hôte, permettant ainsi un calcul accéléré pour des tâches telles que l'apprentissage automatique, l'inférence en apprentissage profond et l'analyse de données. Cet isolement améliore également la sécurité et la gestion des ressources, permettant à plusieurs applications de partager le GPU sans s'interférer les unes avec les autres. Le déploiement et la mise à l'échelle des applications basées sur le GPU deviennent beaucoup plus faciles avec Docker sur un serveur Trooper.AI.

Plus de Docker à exécuter

Vous pouvez facilement exécuter plusieurs conteneurs Docker et demander de l'aide via : Contacts Support