Connexion
Connexion

Comment Installer Bitwarden avec Docker

Comment Installer Bitwarden avec Docker
Hostman Team
Technical writer
Plateforme Docker
07.11.2025
Reading time: 7 min

Bitwarden est un gestionnaire de mots de passe gratuit et open source qui stocke les informations sensibles dans un coffre-fort chiffré. Il est développé en C# à l’aide de .NET Core et ASP.NET Core, et sa base de données repose sur T-SQL/SQL Server.

Bitwarden est un service cloud accessible via plusieurs applications clientes, ce qui le rend multiplateforme : via le web, des applications de bureau (Windows, macOS, Linux), des applications mobiles, des extensions de navigateur (Chrome, Firefox, Safari, Edge, Opera, Vivaldi, Brave, Tor), ou encore via l’interface en ligne de commande (CLI).

L’une des principales raisons d’utiliser Bitwarden est d’éviter les gestionnaires de mots de passe tiers, où les données sont stockées sur des serveurs externes. En le déployant sur votre propre serveur sécurisé, vous gardez un contrôle total sur vos informations.

Bitwarden repose sur un ensemble de conteneurs Docker, chacun contenant un composant fonctionnel distinct — comme la base de données ou le serveur web. Ainsi, l’installation et l’exécution de Bitwarden nécessitent un système de conteneurisation, en l’occurrence Docker.

Principales fonctionnalités de Bitwarden

  • Open source

  • Chiffrement des données via AES 256 bits

  • Prise en charge de l’authentification à deux facteurs (2FA)

  • Système d’audit et de vérification des mots de passe

  • Prise en charge de l’authentification biométrique

  • Possibilité d’héberger le serveur localement

  • Applications clientes multiplateformes sur tous les systèmes courants

Prérequis

Ce guide utilise des commandes pour les systèmes de type UNIX, notamment Debian/Ubuntu, fréquemment utilisés pour le déploiement d’applications serveur.

Avant d’installer et de configurer Bitwarden, assurez-vous que tous les paquets système sont à jour :

sudo apt update

sudo apt upgrade

Si votre serveur est neuf, installez quelques outils de base :

sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Ensuite, assurez-vous que Docker et Docker Compose sont installés pour gérer les conteneurs Bitwarden.

Étape 1 : Installer Docker et ses composants

Ajoutez la clé GPG officielle de Docker, utilisée pour signer les paquets :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Ajoutez ensuite le dépôt Docker pour obtenir la dernière version disponible :

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

Mettez à jour le système :

sudo apt update

Enfin, installez Docker et Docker Compose :

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose

Étape 2 : Sécuriser l’installation de Bitwarden

Pour renforcer la sécurité, créez un utilisateur dédié avec des permissions limitées.

Créez le répertoire de Bitwarden :

sudo mkdir /opt/bitwarden

Créez l’utilisateur :

sudo adduser bitwarden

Attribuez les droits d’accès au répertoire :

sudo chmod -R 700 /opt/bitwarden

sudo chown -R bitwarden:bitwarden /opt/bitwarden

Autorisez l’utilisateur Bitwarden à exécuter des commandes Docker :

sudo usermod -aG docker bitwarden

Connectez-vous avec cet utilisateur :

su bitwarden

cd /opt/bitwarden

Étape 3 : Installer Bitwarden dans Docker et démarrer le serveur

Même sans connaissance approfondie de Docker, les développeurs de Bitwarden ont prévu un script d’installation automatisé.

Téléchargez-le et rendez-le exécutable :

curl -Lso bitwarden.sh https://go.btwrdn.co/bw-sh && chmod 700 bitwarden.sh

Exécutez ensuite le script :

./bitwarden.sh install

Le script vous demandera plusieurs informations :

  • Le nom de domaine du serveur Bitwarden

  • Le nom de la base de données

  • Si vous souhaitez utiliser Let’s Encrypt pour obtenir un certificat SSL gratuit

Vous devrez également fournir un ID d’installation et une clé, que vous pouvez générer sur le site officiel de Bitwarden.

Étape 4 : Configurer un serveur de messagerie SMTP

Bien qu’optionnelle, la configuration d’un serveur SMTP est recommandée pour la gestion des connexions administratives. Modifiez le fichier ./bwdata/env/global.override.env et ajoutez-y les paramètres SMTP :

globalSettings__mail__smtp__host=smtp.gmail.com

globalSettings__mail__smtp__port=587

globalSettings__mail__smtp__ssl=true

globalSettings__mail__smtp__username=votre_email@gmail.com

globalSettings__mail__smtp__password=votre_mot_de_passe

adminSettings__admins=votre_email@gmail.com

Si vous maîtrisez Docker, vous pouvez utiliser un serveur mail conteneurisé, tel que docker-mailserver, particulièrement adapté à Bitwarden. Dans un scénario plus simple (mais moins sécurisé), vous pouvez également utiliser un service public comme Gmail :

globalSettings__mail__replyToEmail=votre_email@gmail.com

globalSettings__mail__smtp__host=smtp.gmail.com

globalSettings__mail__smtp__username=votre_email

globalSettings__mail__smtp__password=votre_mot_de_passe

globalSettings__mail__smtp__ssl=true

globalSettings__mail__smtp__port=587

globalSettings__mail__smtp__useDefaultCredentials=false

globalSettings__disableUserRegistration=true

Une fois configuré, Bitwarden enverra les notifications via votre compte Gmail. Assurez-vous d’activer l’option « autoriser les applications moins sécurisées » dans votre compte, sinon Google pourrait bloquer la connexion.

Si vous utilisez un autre fournisseur d’e-mails, renseignez ses paramètres SMTP (hôte, port, SSL, etc.) de manière similaire. En cas d’échec d’envoi, utilisez un outil de test SMTP en ligne pour vérifier et ajuster les paramètres.

Étape 5 : Démarrer le serveur et vérifier son fonctionnement

Démarrez le serveur à l’aide du même script :

./bitwarden.sh start

Accédez ensuite à l’adresse IP ou au domaine du serveur depuis un navigateur. Pour ouvrir le panneau d’administration, ajoutez /admin à la fin de l’URL.

La page vous demandera l’adresse e-mail renseignée dans le fichier global.override.env. Le serveur SMTP enverra un lien d’accès sans mot de passe à ce courriel.

Vous pouvez ensuite utiliser les applications Bitwarden (desktop, mobile ou web) pour vous connecter à votre serveur et gérer vos mots de passe en toute sécurité.

Arrêter et supprimer le serveur

En cas de dysfonctionnement ou si vous souhaitez réinstaller Bitwarden, arrêtez le service :

./bitwarden.sh stop

Supprimez le répertoire de données :

rm -r ~/bwdata

Puis réinstallez si nécessaire :

./bitwarden.sh install

Conclusion

L’installation de Bitwarden est simple grâce au script automatisé fourni par ses développeurs. Une fois configuré, vous pouvez sécuriser vos données sensibles avec ce puissant gestionnaire de mots de passe, en utilisant DNS, SSL et SMTP selon vos besoins. Pour aller plus loin, consultez la documentation officielle de Bitwarden, qui regorge de conseils et bonnes pratiques.

Plateforme Docker
07.11.2025
Reading time: 7 min

Similaire

Plateforme Docker

Installer Nextcloud avec Docker

Pour celles et ceux qui souhaitent garder un contrôle total sur leurs données, Nextcloud offre une puissante solution open source pour mettre en place un système de stockage cloud privé. La plateforme permet non seulement la synchronisation sécurisée de fichiers entre différents appareils, mais aussi l’hébergement du stockage sur votre propre serveur, sans dépendre de fournisseurs tiers. Dans ce guide, nous allons suivre étape par étape l’installation de Nextcloud en utilisant des conteneurs Docker isolés, ce qui simplifie grandement le déploiement et la gestion. Nous configurerons également le chiffrement automatique du trafic grâce aux certificats SSL de Let’s Encrypt afin d’assurer une transmission sécurisée des données. Prérequis Vous aurez besoin de : Un serveur cloud Hostman avec Linux Ubuntu 24.04 préinstallé. Un nom de domaine. Docker et Docker Compose installés. Pour le serveur, choisissez une configuration comprenant 1 cœur CPU, 2 Go de RAM et une adresse IPv4 publique, que vous pouvez demander lors de la création du serveur ou plus tard dans la section « Network ». Le serveur sera prêt en quelques minutes. L’adresse IPv4 ainsi que les identifiants SSH seront disponibles dans le tableau de bord. Installer et exécuter Nextcloud Nextcloud nécessite plusieurs composants essentiels : Base de données : ici MariaDB, un système de gestion de base de données performant et fiable. Certificat SSL : nous utiliserons les certificats gratuits de l’autorité Let’s Encrypt. Reverse proxy : nous ajouterons Nginx Proxy Manager, qui acheminera le trafic HTTP et HTTPS vers les conteneurs appropriés. Étape 1 : Créer un répertoire de configuration Commencez par créer un dossier destiné à stocker les fichiers de configuration et accédez-y : mkdir nextcloud && cd nextcloud Étape 2 : Créer le fichier .env Ce fichier caché contiendra les variables de mots de passe : nano .env Contenu du fichier : NEXTCLOUD_ROOT_PASSWORD=secure_root_password_123 NEXTCLOUD_DB_PASSWORD=secure_nextcloud_db_password_456 NPM_ROOT_PASSWORD=secure_npm_root_password_789 NPM_DB_PASSWORD=secure_npm_db_password_012 N’oubliez pas de remplacer les valeurs par les vôtres. Étape 3 : Créer le fichier docker-compose.yml Créez le fichier : nano docker-compose.yml Ajoutez la configuration suivante (non traduite selon votre demande) : volumes:   nextcloud-data:   nextcloud-db:   npm-data:   npm-ssl:   npm-db:   networks:   frontend:   backend:   services:   nextcloud-app:     image: nextcloud:31.0.8     restart: always     volumes:       - nextcloud-data:/var/www/html     environment:       - MYSQL_PASSWORD=${NEXTCLOUD_DB_PASSWORD}       - MYSQL_DATABASE=nextcloud       - MYSQL_USER=nextcloud       - MYSQL_HOST=nextcloud-db       - MYSQL_PORT=3306     networks:       - frontend       - backend     nextcloud-db:     image: mariadb:12.0.2     restart: always     command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW     volumes:       - nextcloud-db:/var/lib/mysql     environment:       - MYSQL_ROOT_PASSWORD=${NEXTCLOUD_ROOT_PASSWORD}       - MYSQL_PASSWORD=${NEXTCLOUD_DB_PASSWORD}       - MYSQL_DATABASE=nextcloud       - MYSQL_USER=nextcloud     networks:       - backend     npm-app:     image: jc21/nginx-proxy-manager:2.12.6     restart: always     ports:       - "80:80"       - "81:81"       - "443:443"     environment:       - DB_MYSQL_HOST=npm-db       - DB_MYSQL_PORT=3306       - DB_MYSQL_USER=npm       - DB_MYSQL_PASSWORD=${NPM_DB_PASSWORD}       - DB_MYSQL_NAME=npm     volumes:       - npm-data:/data       - npm-ssl:/etc/letsencrypt     networks:       - frontend       - backend     npm-db:     image: jc21/mariadb-aria:10.11.5     restart: always     environment:       - MYSQL_ROOT_PASSWORD=${NPM_ROOT_PASSWORD}       - MYSQL_DATABASE=npm       - MYSQL_USER=npm       - MYSQL_PASSWORD=${NPM_DB_PASSWORD}     volumes:       - npm-db:/var/lib/mysql     networks:       - backend Étape 4 : Démarrer les conteneurs Lancez : docker compose up -d Si une erreur liée aux limites de téléchargement Docker Hub apparaît : Connectez-vous à votre compte Docker Hub ou créez-en un. Allez dans Account settings → Personal access tokens. Cliquez sur Generate new token. Donnez une description, définissez une date d’expiration et choisissez les permissions : Read, Write, Delete. Cliquez sur Generate et copiez le token (il ne sera affiché qu’une seule fois). Sur le serveur, connectez-vous avec : docker login -u dockeruser Remplacez dockeruser par votre nom d’utilisateur et collez le token comme mot de passe. Redémarrez ensuite les conteneurs : docker compose up -d Vérifiez leur état : docker ps Tous les conteneurs doivent être marqués Up. Étape 5 : Configurer HTTPS avec Let’s Encrypt Ouvrez dans votre navigateur : http://<server-IP>:81 Identifiants par défaut : Login : admin@example.com Mot de passe : changeme Lors de la première connexion : Mettez à jour le nom complet, pseudonyme et e-mail. Changez le mot de passe : Current Password : changeme New Password : votre nouveau mot de passe Confirm Password : répétez le mot de passe Étape 6 : Ajouter un Proxy Host Accédez à Hosts → Proxy Hosts. Cliquez sur Add Proxy Host et remplissez : Domain Names : le domaine de votre instance Nextcloud Scheme : http Forward Hostname/IP : nextcloud-app Forward Port : 80 Dans l’onglet SSL : Sélectionnez Request a new SSL Certificate Activez : Force SSL HTTP/2 Support HSTS Enabled Saisissez votre e-mail pour Let’s Encrypt et acceptez les conditions. Enregistrez. Étape 7 : Se connecter à Nextcloud Accédez maintenant à votre domaine. Si tout est correctement configuré, l’interface web de Nextcloud s’ouvrira et un certificat SSL Let’s Encrypt sera automatiquement émis. Créez un nouveau compte administrateur. Installez les applications recommandées si vous le souhaitez. L’installation et la configuration de base sont terminées. Conclusion Dans cet article, nous avons montré comment déployer Nextcloud avec Docker et obtenir un certificat SSL gratuit via Let’s Encrypt. Cette méthode est l’une des plus fiables, sécurisées et évolutives. Docker garantit une bonne isolation des applications, simplifie les mises à jour et facilite les migrations. Utiliser un certificat SSL n’est pas seulement recommandé : c’est essentiel pour protéger les données sensibles et assurer un trafic chiffré.
25 November 2025 · 7 min to read
Plateforme Docker

Configuration de registres Docker externes

Lorsque vous travaillez avec Docker, vous manipulez des images — des fichiers exécutables contenant tout ce qu’il faut pour exécuter une application : code source, bibliothèques et dépendances. Ces images sont stockées dans des dépôts spécialisés appelés registres, qui peuvent être privés ou publics. Le registre public le plus connu est Docker Hub, où vous pouvez trouver de nombreuses images officielles telles que Nginx, PostgreSQL, Alpine, Ubuntu, Node et MongoDB. Les utilisateurs peuvent créer un compte sur Docker Hub et y stocker leurs propres images ; par défaut, ils disposent d’un registre public et de trois registres privés. Docker Hub est le registre par défaut utilisé par Docker pour télécharger (pull) les images. Ce guide explique comment changer le registre par défaut de Docker pour en utiliser un autre. Utiliser des registres Docker externes Une méthode simple pour utiliser des registres externes consiste à recourir à ceux proposés par des fournisseurs tiers tels que Google ou Amazon. Voici une liste de registres publics que vous pouvez utiliser : URL du registre Fournisseur https://mirror.gcr.io Google https://public.ecr.aws Amazon https://quay.io Red Hat https://registry.access.redhat.com Red Hat https://registry.redhat.io Red Hat ⚠️ Remarque : l’utilisation de registres externes peut présenter des risques de sécurité. Procédez avec prudence. Suivez les étapes ci-dessous pour remplacer Docker Hub par un autre registre par défaut. Configuration sous Linux Ouvrez le fichier daemon.json avec un éditeur de texte. Si Docker est installé hors mode rootless, le fichier se trouve ici : /etc/docker/daemon.json S’il n’existe pas, créez-le avec : nano /etc/docker/daemon.json Pour Docker en mode rootless, le fichier se trouve dans le répertoire personnel de l’utilisateur : ~/.config/docker/daemon.json Créez-le si nécessaire : nano ~/.config/docker/daemon.json Ajoutez le paramètre suivant pour définir un nouveau registre par défaut (exemple : miroir Google) : {   "registry-mirrors": ["https://mirror.gcr.io"] } Enregistrez et fermez le fichier. Redémarrez ensuite le service Docker pour appliquer les changements : systemctl reload docker Désormais, Docker utilisera le nouveau registre pour les téléchargements.Par exemple, pour récupérer l’image Alpine depuis le miroir de Google : docker pull mirror.gcr.io/alpine Vous pouvez également spécifier une version précise : docker pull mirror.gcr.io/nginx:1.25.2 Configuration sous Windows (Docker Desktop) Ouvrez le fichier daemon.json, situé ici : C:\Users\<votre_nom_utilisateur>\.docker\daemon.json Ajoutez le paramètre suivant : {   "registry-mirrors": ["https://mirror.gcr.io"] } Enregistrez le fichier, puis redémarrez Docker. Faites un clic droit sur l’icône Docker dans la barre des tâches et sélectionnez Restart. Vous pouvez aussi effectuer cette configuration via l’interface graphique de Docker Desktop - allez dans Settings → Docker Engine, puis ajoutez : {   "registry-mirrors": ["https://mirror.gcr.io"] } Cliquez ensuite sur Apply & Restart pour appliquer les modifications. Après le redémarrage, Docker utilisera le nouveau registre pour les téléchargements. Par exemple, téléchargez une image curl : docker pull mirror.gcr.io/curlimages/curl Ou une version spécifique : docker pull mirror.gcr.io/node:21-alpine Utiliser Nexus comme registre Docker Il est également possible d’utiliser Nexus pour gérer vos images Docker. Nexus prend en charge les dépôts proxy, qui permettent de mettre en cache les images téléchargées depuis des registres externes comme Docker Hub. Ainsi, Nexus peut servir de registre proxy de mise en cache, pratique en cas d’indisponibilité d’un registre externe. Création d’un dépôt proxy dans Nexus Connectez-vous à Nexus avec un compte administrateur ou un utilisateur disposant des droits de création de dépôts. Accédez à Server Administration and Configuration → Repositories. Cliquez sur Create repository et sélectionnez le type docker (proxy). Renseignez les champs suivants : Name : donnez un nom unique au dépôt. Online : cochez cette option pour activer le dépôt. Proxy : si Nexus est derrière un proxy (comme Nginx), il n’est pas nécessaire de définir un port d’authentification.Sinon, attribuez un port unique pour HTTP ou HTTPS. Allow anonymous docker pull : cochez cette case pour autoriser le téléchargement d’images sans authentification.Si elle est décochée, une connexion sera requise. Remote storage : indiquez l’URL du registre externe, par exemple https://registry-1.docker.io pour Docker Hub. Une fois le dépôt créé, connectez-vous au registre Nexus si nécessaire : docker login <adresse_du_registre_nexus> Pour télécharger une image : docker pull <adresse_du_registre_nexus>/nom_image:tag Exemple : télécharger une image Python avec le tag 3.8.19-alpine : docker pull nexus-repo.com/python:3.8.19-alpine ⚠️ Conseil de sécurité : évitez d’utiliser le tag latest, car il peut contenir des bugs ou des vulnérabilités. Conclusion Cet article a présenté plusieurs méthodes pour télécharger et stocker des images Docker. L’utilisation de registres externes peut être utile lorsque Docker Hub est indisponible. Si vous ne faites pas confiance aux registres publics, vous pouvez toujours héberger votre propre registre Docker, privé ou public, via des solutions comme Nexus ou Harbor.
05 November 2025 · 5 min to read
Plateforme Docker

Exécuter Selenium avec Chrome dans Docker

Il est parfois utile d’exécuter Selenium en Python dans un conteneur Docker. Cela soulève plusieurs questions : quels sont les avantages de cette approche, comment assurer la compatibilité entre ChromeDriver et Chromium, et quelles sont les subtilités de la mise en œuvre ? Dans cet article, nous aborderons ces points essentiels et proposerons des solutions aux problèmes les plus fréquents. Pourquoi exécuter Selenium dans Docker ? L’exécution de Selenium dans un conteneur offre de nombreux avantages : 🧩 Portabilité – Vous pouvez facilement transférer votre environnement d’une machine à une autre sans conflit de versions ni dépendances spécifiques à un système d’exploitation. 🧱 Isolation – Le conteneur Selenium peut être remplacé ou mis à jour rapidement sans affecter d’autres composants du serveur. ⚙️ Compatibilité CI/CD – Une version conteneurisée de Selenium s’intègre parfaitement dans les pipelines CI/CD, permettant de recréer à chaque test un environnement propre et cohérent. Préparer un serveur Ubuntu pour Selenium avec Docker Avant de commencer, assurez-vous que Docker et Docker Compose sont installés : docker --version && docker compose version 💡 Dans certaines versions, la commande est docker-compose (avec un tiret) au lieu de docker compose. Si les outils sont installés, leurs versions s’afficheront. Sinon, installez-les avant de poursuivre. Exemple : exécuter Selenium dans Docker Lors du déploiement de Selenium dans des conteneurs Docker, il faut prendre en compte : l’architecture de l’hôte, les besoins fonctionnels, et la performance attendue. Les images officielles selenium/standalone-* sont prévues pour les processeurs AMD64 (x86_64), tandis que seleniarm/standalone-* sont adaptées aux architectures ARM (comme Apple Silicon ou les serveurs ARM64). Créez un fichier docker-compose.yml à la racine de votre projet : version: "3" services: app: build: . restart: always volumes: - .:/app depends_on: - selenium platform: linux/amd64 selenium: image: selenium/standalone-chromium:latest # For AMD64 # image: seleniarm/standalone-chromium:latest # For ARM64 container_name: selenium-container restart: unless-stopped shm_size: 2g ports: - "4444:4444" # Selenium WebDriver API - "7900:7900" # VNC Viewer environment: - SE_NODE_MAX_SESSIONS=1 - SE_NODE_OVERRIDE_MAX_SESSIONS=true - SE_NODE_SESSION_TIMEOUT=300 - SE_NODE_GRID_URL=http://localhost:4444 - SE_NODE_DETECT_DRIVERS=false Sélectionnez l’image adaptée à votre système en décommentant la bonne ligne. Le service app contiendra votre code Python principal. Voici un Dockerfile standard : # Use a minimal Python image FROM python:3.11-slim # Set working directory WORKDIR /app # Install Python dependencies COPY requirements.txt /app/ RUN pip install --no-cache-dir -r requirements.txt # Copy project files COPY . /app/ # Set environment variables (Chromium is in a separate container) ENV SELENIUM_REMOTE_URL="http://selenium:4444/wd/hub" # Run Python script CMD ["python", "main.py"] Cette configuration utilise une image Python minimale et installe automatiquement les dépendances requises. Script principal (main.py) import time # Used to create a delay for checking browser functionality import os from selenium import webdriver from selenium.webdriver.chrome.service import Service from selenium.webdriver.chrome.options import Options # WebDriver settings chrome_options = Options() chrome_options.add_argument("--no-sandbox") chrome_options.add_argument("--disable-dev-shm-usage") chrome_options.add_argument("--disable-gpu") chrome_options.add_argument("--disable-webrtc") chrome_options.add_argument("--hide-scrollbars") chrome_options.add_argument("--disable-notifications") chrome_options.add_argument("--start-maximized") SELENIUM_REMOTE_URL = os.getenv("SELENIUM_REMOTE_URL", "http://selenium:4444/wd/hub") driver = webdriver.Remote( command_executor=SELENIUM_REMOTE_URL, options=chrome_options ) # Open a test page driver.get("https://www.hostman.com") time.sleep(9999) # Shut down WebDriver driver.quit() requirements.txt attrs==25.1.0 certifi==2025.1.31 h11==0.14.0 idna==3.10 outcome==1.3.0.post0 PySocks==1.7.1 selenium==4.28.1 sniffio==1.3.1 sortedcontainers==2.4.0 trio==0.28.0 trio-websocket==0.11.1 typing_extensions==4.12.2 urllib3==2.3.0 websocket-client==1.8.0 wsproto==1.2.0 Lancer les conteneurs Démarrez les conteneurs : docker compose up -d Docker construira et lancera les conteneurs en arrière-plan. Pour vérifier leur état : docker compose ps Vous devriez voir deux conteneurs en cours d’exécution, indiquant que tout fonctionne correctement. Vous pouvez désormais interagir avec des sites web via le script Selenium. Déboguer Selenium dans Docker avec VNC Dans les images officielles Selenium (comme selenium/standalone-chrome ou seleniarm/standalone-chromium), l’accès direct au Chrome DevTools Protocol (CDP) est géré par Selenium Grid. Chaque session crée un nouveau port WebSocket, ce qui rend l’accès direct impossible depuis l’extérieur du conteneur. Les options telles que --remote-debugging-port=9229 sont donc ignorées ou remplacées. À la place, ces images incluent un serveur VNC (Virtual Network Computing) intégré, similaire à TeamViewer ou AnyDesk. ⚠️ Le mode headless doit être désactivé, car VNC diffuse l’écran réel du navigateur. Connectez-vous à l’interface web VNC via : http://<server_ip>:7900 Lors de la première connexion, un mot de passe sera demandé. Générez-le dans le conteneur Selenium : docker exec -it selenium-container bash x11vnc -storepasswd Entrez et confirmez le mot de passe, puis utilisez-le sur l’interface VNC. Vous pourrez alors visualiser et contrôler le navigateur géré par Selenium directement dans Docker. Cela permet d’ouvrir les DevTools, d’inspecter le DOM ou de suivre les requêtes réseau. Conclusion Exécuter Selenium dans des conteneurs Docker simplifie la gestion des environnements, réduit les conflits de versions et améliore la portabilité. Grâce à l’intégration de VNC, vous pouvez également effectuer des débogages visuels. Veillez simplement à : choisir l’image adaptée à votre architecture (AMD64 ou ARM64), et désactiver le mode headless si une interface graphique est nécessaire. Cette configuration offre une infrastructure de test flexible, stable et adaptée aux pipelines CI/CD modernes.
30 October 2025 · 6 min to read

Avez-vous des questions,
des commentaires ou
des préoccupations ?

Nos professionnels sont disponibles pour vous aider à tout moment,
que vous ayez besoin d'aide ou que vous ne sachiez pas par où commencer.
Envoyez-nous un e-mail
Hostman's Support