====== Module LXC : Déploiement de Visual Studio dans un Conteneur Btrfs ======
Cette page documente le protocole technique permettant d'isoler l'environnement de développement **Visual Studio (Code-Server)** dans un conteneur système LXC, adossé de manière étanche à un sous-volume Btrfs dédié.
===== 1. Schéma d'Architecture Métrologique =====
* **Sous-volume Btrfs :** `/var/lib/lxc/vol_appli_visual_studio/`
* **Conteneur LXC :** `visual-studio-container`
* **OS Invité :** Fedora 44 (Léger et isolé)
* **Accès Utilisateur :** Interface Web sécurisée (Port 8080 local ou tunnel SSH)
===== 2. Protocole de Provisioning (Compte d'administration) =====
Les manipulations suivantes doivent être exécutées de manière séquentielle sur le terminal de production.
==== Étape A : Création et isolation du sous-volume Btrfs ====
En tant qu'administrateur, créez le sous-volume racine à l'emplacement par défaut de LXC et appliquez instantanément la règle de performance No_CoW (Désactivation de la copie sur écriture pour les bases de données et fichiers de code).
bash
# Création du sous-volume physique Btrfs
sudo btrfs subvolume create /var/lib/lxc/vol_appli_visual_studio
# Application stricte de l'attribut No_CoW (+C)
sudo chattr +C /var/lib/lxc/vol_appli_visual_studio
# Vérification métrologique de la structure
sudo btrfs subvolume show /var/lib/lxc/vol_appli_visual_studio
==== Étape B : Instanciation du conteneur système LXC ====
Commandez au moteur LXC de déployer un système Fedora propre à l'intérieur de votre sous-volume en utilisant l'argument de stockage spécifique à Btrfs.
bash
# Création du conteneur en forçant le répertoire Btrfs comme racine
sudo lxc-create -n visual-studio-container -t fedora -B btrfs --dir /var/lib/lxc/vol_appli_visual_studio
==== Étape C : Configuration réseau et démarrage ====
Démarrez la machine virtuelle conteneur et vérifiez son statut en direct.
bash
# Allumage du conteneur
sudo lxc-start -n visual-studio-container
# Contrôle métrologique de l'état de l'infrastructure
sudo lxc-info -n visual-studio-container
===== 3. Déploiement de l'environnement Visual Studio =====
Une fois le conteneur actif, connectez-vous à sa console interne pour y injecter les paquets de développement.
bash
# Ouverture de la console interne du conteneur
sudo lxc-attach -n visual-studio-container
À l'intérieur du conteneur (invite du conteneur), exécutez le script d'installation officiel de Code-Server :
bash
# Mise à jour du sous-système invité
dnf update -y
# Installation du moteur de l'environnement Visual Studio web
curl -fsSL https://code-server.dev | sh
# Activation et démarrage automatique du service pour l'utilisateur
systemctl enable --now code-server@root
===== 4. Informations Naturelles pour l'Humain =====
La configuration de l'application est accessible à l'intérieur du conteneur sous le fichier suivant :
`/root/.config/code-server/config.yaml`
Le mot de passe généré automatiquement y est inscrit en texte clair pour l'administrateur humain. L'environnement de développement complet est alors disponible à l'adresse ''http://localhost:8080'' à travers le réseau local ou un tunnel SSH de l'association.