Aperçu
Un système de navigation web distant sécurisé qui fournit des sessions isolées via des conteneurs Kubernetes. Chaque utilisateur obtient un pod éphémère dédié avec un navigateur headless, streamé en temps réel via WebRTC.
Fonctionnalités clés
- Isolation par session — Chaque session tourne dans son propre pod Kubernetes
- Streaming WebRTC — Flux vidéo en temps réel du navigateur distant
- Proxy Rust — Couche de filtrage réseau haute performance
- Auto-scaling — Kubernetes gère le cycle de vie des pods et les ressources
- Réseau zero-trust — Chaque session est totalement isolée des autres
Démarrage rapide avec Docker
Vous souhaitez tester un navigateur Chromium sandboxé ? Vous pouvez rapidement l’essayer en utilisant notre image Docker disponible sur Docker Hub.
Lancement du conteneur
Utilisez la commande suivante pour démarrer un conteneur Chromium avec les configurations appropriées :
docker run -d \
--name=chromium_test \
--security-opt seccomp=unconfined \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Etc/UTC \
-e CHROME_CLI=https://level-sony.fr/en/ \
-p 3000:3000 \
-p 3001:3001 \
-v /path/to/config:/config \
--shm-size="1gb" \
--restart unless-stopped \
dilanek/docker_chromiun:test
Options de configuration
--name=chromium_test— Nom du conteneur--security-opt seccomp=unconfined— (Optionnel) Désactive les restrictions de sécurité seccomp-e PUID=1000et-e PGID=1000— Définit l’utilisateur et le groupe pour éviter les problèmes de permissions sur les fichiers-e TZ=Etc/UTC— Définit le fuseau horaire du conteneur-e CHROME_CLI=https://level-sony.fr/en/— (Optionnel) URL à ouvrir automatiquement au démarrage-p 3000:3000 -p 3001:3001— Expose les ports 3000 et 3001-v /path/to/config:/config— Monte un volume pour stocker les configurations de manière persistante (remplacez/path/to/configpar le chemin souhaité)--shm-size="1gb"— Alloue 1 Go de mémoire partagée pour Chromium--restart unless-stopped— Redémarre automatiquement le conteneur sauf si arrêté manuellement
Remarque importante : Évolution du conteneur
Ce conteneur est actuellement en cours de développement actif. L’objectif principal est d’atteindre une compatibilité WebRTC à 100%, en particulier pour la gestion de l’audio.
Le but est d’assurer une compatibilité complète avec WebRTC, en garantissant une gestion fluide et optimisée des flux audio et vidéo. Cette fonctionnalité est encore en développement et pourrait subir des ajustements dans les futures versions.
Cette évolution vise à offrir une solution WebRTC performante et complète, adaptée à des cas d’utilisation avancés, notamment pour les applications de vidéoconférence et de streaming en direct.
Pour aller plus loin
Lisez l’article technique complet Repenser la navigation web avec un vrai bac à sable pour découvrir les décisions d’architecture détaillées, les défis d’implémentation et l’analyse de sécurité.
