User Tools

Site Tools


virtualisation:lxd-notes

LXD: Création et configuration d'un conteneur

Configuration

Serveur graphique

Prise en charge d'une carte grpahique Intel

Il faut donner les droits spéciaux SETUID et STICKYBIT (cf. les droits spéciaux) au device /dev/dri/card0 afin qu'il puisse être utilisé par le serveur x.

sudo chmod 5700 /dev/dri/card0

Démarrage de X11 depuis la console

On peut utiliser startx de Xorg, Mais certains environnements de bureau fournissent leurs propres remplacements pour startx. Par exemple, Xfce4 fournit startxfce4:

startxfce4 -- vt7

Généralement les 6 premiers terminaux virtuels sont réservés aux shells. Le VT numéro 7 est généralement réservé au serveur X.

Limitation des ressources

  • lxc config set ${hostname} limits.memory.swap true Pas de Swap
  • lxc config set ${hostname} limits.cpu 1 limite le nombre de CPU = 1
  • lxc config set ${hostname} limits.memory 256MB limite la quantité de RAM = 256Mo
  • lxc config device set ${hostname} root size 5GB limite la taille du répertoire racine / = 5Go

Réseau

LXD dispose d'un proxy intégré, ce qui permet de créer des connexions proxy entre l'hôte et les conteneurs. Cela inclut les connexions de socket TCP, UDP et Unix, dans n'importe quelle combinaison entre elles, dans n'importe quelle direction. Par exemple, lorsqu'une personne se connecte à l'hôte sur le port 80 (http), cette connexion peut être envoyée par proxy à un conteneur à l'aide d'un périphérique proxy. De cette façon, on peut isoler le serveur Web dans un conteneur LXD. En utilisant un périphérique proxy TCP, il n'est pas besoin d'utiliser iptables à la place.

lxc config device add xfce VNCPort5900 proxy listen=tcp:0.0.0.0:5900 connect=tcp:localhost:5900

La commande qui crée le périphérique proxy utilise les composants suivants:

  • lxc config device add, ajoute un device à la config,
  • xfce, au conteneur xfce,
  • VNCPort5900 , avec le nom VNCPort5900,
  • proxy, on ajoute un périphérique proxy LXD.
  • listen=tcp:0.0.0.0:5900, écoute (sur l'hôte par défaut) sur toutes les interfaces réseau sur le port TCP 5900.
  • connect=tcp:localhost:5900, redirige le flux (dans le conteneur xfce) sur port TCP 5900 du localhost.

Imprimante

Installer cups et system-config-printer-gnome:

  1. installer les paquets avec la commande apt install cups system-config-printer-gnome
  2. Télécharger le fichier PostScript Printer Description ou *.ppd correspondant au modèle d'imprimante utilisé.
  3. décompacter l'archive.
  4. en root lancer system-config-printer
  5. appuyer sur add pour ajouter une imprimante
  6. choisir Network printer>Find Network Printer
  7. indiquer l'adresse ip de l'imprimante dans Host
  8. appuyer sur probe
  9. prendre le fichier ppd télécharger comme driver

Donner les droits d'utilisation à l'utisateur normal e redémarrer cups (stop+start et non restart):

sudo usermod -aG lpadmin jacques.nougat
sudo service cups start

Le service cups.socket doit être Active: active (running)

systemctl status cups.socket

Failed to dump process list, ignoring: No such file or directory
  cups.socket - CUPS Scheduler
   Loaded: loaded (/lib/systemd/system/cups.socket; enabled; vendor preset: enab
   Active: active (running) since Mon 2021-01-04 09:42:49 UTC; 2h 7min ago
   Listen: /run/cups/cups.sock (Stream)
   CGroup: /system.slice/cups.socket

Applications

Gnome Teminal

Si lors du lancement du terminal Gnome une erreur est retornée

$ gnome-terminal
Error constructing proxy for org.gnome.Terminal: /org/gnome/Terminal/Factory0: 
Error calling StartServiceByName for org.gnome.Terminal:
Process /usr/lib/gnome-terminal/gnome-terminal-server exited with status 8

Mettre à jour le lanceur du terminal:

  1. Clic droit sur l'icone du lanceur de terminal
  2. choisir l'item Properties
  3. cliquer sur Edit
  4. Puis remplacer la commande exo-open --launch TerminalEmulator par /usr/bin/dbus-launch /usr/bin/gnome-terminal

PHP

Si NGINX renvoi une page d'erreur bad GATEWAY vérifier que PHP à bien démarrer

systemctl status php7.2-fpm

 php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor prese
   Active: active (running) since Mon 2021-01-04 07:11:15 UTC; 1h 26min ago
     Docs: man:php-fpm7.2(8)
 Main PID: 760 (php-fpm7.2)
   Status: "Processes active: 0, idle: 3, Requests: 209, slow: 0, Traffic: 0req/
    Tasks: 4 (limit: 4569)
   CGroup: /system.slice/php7.2-fpm.service
           ├─ 760 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)
           ├─1038 php-fpm: pool www
           ├─1098 php-fpm: pool www
           └─1104 php-fpm: pool www

Si ce n'est pas le cas, vérifier que le répertoire /run/php existe bien, si ce n'est pas le cas créer le répertoire puis lancer PHP

mkdir /run/php
sudo systemctl start php7.2-fpm

Capture d'écran

Installer l'application xfce4-screenshooter

apt install xfce4-screenshooter

Dans Menu XFCE -> Paramètres -> Clavier -> Raccourcis d'application, ajouter la commande xfce4-screenshooter -f pour utiliser la touche “PrintScreen” afin de prendre des captures d'écran en plein écran.

virtualisation/lxd-notes.txt · Last modified: 2025/02/19 10:59 by 127.0.0.1