NOTE: Renseigner dans Edit-Preference-Workspace, le dossier de création des VM sur le disque avec le maximum de stockage.
🤚 NOTE: Vérifier que la bonne carte réseau est renseignée dans les paramètres de VMware
💡- Terminal = Ctl+Alt+T
$ sudo apt update && sudo apt upgrade -y
$ sudo apt install openssh-server -y
$ ssh-keygen -C UserName -f labo420 (le compte créé à l'installation d'Ubuntu)
$ ssh-copy-id -i labo420.pub userName@adresse-ip
# Tester
$
Au besoin:
chmod 600 ~/.ssh/config
Host labo
# Host srv*
HostName 'adresse-IP'
User UserName
Port 22
IdentityFile ~/.ssh/uneCle
ssh compte@1.2.3.4
👉 Obtenir l’adresse IP et compléter l’étape 4.2
$ sudo nano /etc/hostname
$ sudo nano /etc/hosts
$ sudo reboot
ssh compte@1.2.3.4
Voir le document : Installation de Docker
$ docker version
$ docker help
https://liquidprompt.readthedocs.io/en/stable/overview.html
git clone --branch stable https://github.com/liquidprompt/liquidprompt.git ~/liquidprompt
source ~/liquidprompt/liquidprompt
source ~/liquidprompt/themes/unfold/unfold.theme
lp_theme unfold # lp_theme default
source ~/liquidprompt/themes/powerline/powerline.theme
lp_theme --list
–> Ajouter dans le fichier .bashrc :
$ nano .bashrc
[[ $- = *i* ]] && source ~/liquidprompt/liquidprompt
source ~/liquidprompt/themes/unfold/unfold.theme
source ~/liquidprompt/themes/powerline/powerline.theme
lp_theme unfold # lp_theme default
lp_theme --list
echo -e "\nPour changer de thème: lp_theme nom-du-theme\n\n"
👉 Voir les copier/coller
https://github.com/jesseduffield/lazydocker
# Obtenir le numéro de la dernière version
LAZYDOCKER_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazydocker/releases/latest" | grep -Po '"tag_name": "v\K[0-9.]+')
echo $LAZYDOCKER_VERSION
# Obtenir la dernière version
curl -Lo lazydocker.tar.gz "https://github.com/jesseduffield/lazydocker/releases/latest/download/lazydocker_${LAZYDOCKER_VERSION}_Linux_x86_64.tar.gz"
# Désarchiver et installer
mkdir lazydocker-temp
tar xf lazydocker.tar.gz -C lazydocker-temp
sudo mv lazydocker-temp/lazydocker /usr/local/bin
rm -rf lazydocker.tar.gz lazydocker-temp
lazydocker --version
alias lzd='lazydocker'

services:
dockhand:
image: fnsys/dockhand:latest
container_name: dockhand
restart: unless-stopped
ports:
- 3000:3000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- dockhand_data:/app/data
volumes:
dockhand_data:
# Démarrer DockHand:
$ docker compose up -d

https://getarcane.app/
# Fichier compose.yaml
services:
arcane:
image: ghcr.io/getarcaneapp/arcane:latest
container_name: arcane
ports:
- '3552:3552'
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- arcane-data:/app/data
- /host/path/to/projects:/app/data/projects
environment:
- APP_URL=http://localhost:3552
- PUID=1000
- PGID=1000
- ENCRYPTION_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxx
- JWT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxx
restart: unless-stopped
volumes:
arcane-data:
$ openssl rand -base64 32
# Exemple de sortie: qxBW5EkvjIeYgRS4e7Lii3WJ6SqJEF7L5PLjlJ6NzX4=
$ openssl rand -hex 64
2bbee9ee013f1e2ed0f6b0f03876159637e1e702d345a776ea92d0f3ee1a35a52d1b73c58b01481aca4f3873c78e532570a8eaaed34800eba0bb76440fc3ccc0
# Démarrer Arcane:
$ docker compose up -d
🔑 Password: arcane-admin

### 14 - Installer l’extension Docker pour VSCode en mode ssh:


Pour pouvoir cloner des dépots privés, à partir de la VM, il faut créer une paires de clées et renseigner la clée publique dans le compte Github.
cd ~/.ssh/
ssh-keygen -t ed25519 -C "email.utilisée@github.com"
Sous ‘Clic sur l’avatar -> Settings -> SSH and PGP keys:

Ajouter la clé publique et indiquer le type ‘Authentification’
Sur la VM, définir les informations pour les commits et utiliser git
git config --global user.name "Votre nom"
git config --global user.email "votre.courriel@example.com"
git clone, push, pull, ...
docker login -u compte_sur_docker_hub
password:
# Tester
docker run -p 80:8080 -d nginxdemos/nginx-hello
docker run -p 81:8080 -d nginxdemos/nginx-hello
...
🛑NOTE: En laboratoire, il est important de s’identifier avec la commande ‘docker login’ car les téléchargements sont limités à 100 par jour. Tous les postes du D139 utilisent la même adresse IP externe. Sans cette identification, nous atteindrons la limite très rapidement.
## Crédits
Document rédigé par Alain Boudreault © 2021-2026
Version 2026.01.22.1
Site par ve2cuy