Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save moukrea/4f0e768dd2d36087104bad825df2cc36 to your computer and use it in GitHub Desktop.
Save moukrea/4f0e768dd2d36087104bad825df2cc36 to your computer and use it in GitHub Desktop.
Créer un server utilisant Docker sur votre Freebox Delta

Créer un server utilisant Docker sur votre Freebox Delta

Ceci est un guide étape par étape pour créer un serveur utilisant Docker facilement sur votre Freebox Delta

Pré-requis

Vous avez déjà accédé à Freebox OS et ce dernier est déjà configuré pour la connexion. Cliquez ici pour configurer votre Freebox si ce n'est pas déjà fait.

Vous avez un disque dur connecté sur votre Freebox (nécessaire pour installer une machine virtuelle). Ci ce n'est pas déjà fait, vous pouvez suivre un des guides ci-dessous:

1. Créer une machine virtuelle sur votre Freebox

  • Rendez-vous sur mafreebox.freebox.fr ou 192.168.1.254
  • Connectez-vous avec votre mot de passe
  • Cliquez sur le raccourci "VMs"
  • Cliquez sur "Ajouter une VM"
  • Donnez un nom à votre VM via le champ "Choisissez un nom pour votre VM (facultatif)". J'ai choisi freeboxserver.
  • Assignez le nombre de CPU via le slider "CPUs". Recommandé: 2.
  • Assignez la quantité de RAM de votre future VM via le champ "RAM (Mo)". Recommandé: 957, soit le maximum possible sur la Freebox Delta d'origine.
  • Dans le champs "Comment souhaitez-vous installer votre VM", sélectionnez Choisir un système d'exploitation pré-installé parmi une liste par soucis de simplicité.
  • Cliquez sur "Suivant".
  • Dans le champs "Système pré-installé", sélectionnez la distribution de votre choix. Ce guide utilisera Ubuntu 20.04 LTS (Focal) par soucis de simplicité.
  • Précisez un nom d'utilisateur par défaut via le champ "Utilisateur par défaut". J'ai choisi freeboxserver.
  • Pour le champ "Clé SSH", nous devons ouvrir un terminal sur notre machine et exécuter la commande suivante (ici depuis un shell linux):
ssh-keygen -o -a 100 -t ed25519 -f ~/.ssh/<your_key_name> -C "<your_comment>"

Remplacez <your_key_name> par un nom de clé qui vous sera facilement identifiable.
Remplacez <your_comment> par un commentaire (facultatif) pour mieux décrire votre clé SSH.

  • Affichez, puis copiez ensuite le contenu de la clé publique via la commande cat ~/.ssh/<your_key_name>.pub et collez là dans le champ "Clé SSH" de Freebox OS.
  • Ne remplissez pas le champ "Mot de passe (déconseillé)".
  • Cochez la case du champ "Accès aux disques Freebox".
  • Cliquez sur "Suivant".
  • Attendez que le champ "Statut" affiche "Terminé".
  • Laissez la case du champ "Redimensionner le disque" cochée.
  • Choisissez la taille de votre disque virtuel via "Taille du disque (Go)", j'ai choisi 42 (valeur suggérée par défaut)
  • Cliquez sur le bouton "Terminer".
  • Sélectionnez votre VM dans la liste des machines virtuelles disponibles (menu de gauche).
  • Cliquez sur le bouton "Allumer".
  • Attendez qu'une adresse ip soit affichée à la place de "Non connecté" dans la section "État".

2. Connectez vous en SSH à votre nouvelle machine virtuelle

  • Depuis votre machine, connectez vous en SSH à votre nouvelle VM:
ssh -i ~/.ssh/<your_key_name> <your_vm_username>@<vm_ip_address>

Remplacez <your_key_name> par le nom de votre clé SSH générée lors de l'installation de la VM. Remplacez <your_vm_username> par le nom d'utilisateur par défaut que vous avez choisi lors de l'installation de la VM. Remplacez <vm_ip_address> par l'adresse IP de votre VM.

  • Une confirmation vous sera demandé la première fois, tapez yes en toutes lettres, puis validez avec la touche "Entrée".

3. Installer Docker sur la machine virtuelle

Basé sur la documentation officielle

Jouez le commandes suivantes, ligne par ligne :

# Garde fou pour éviter les installation Docker 'legacy'
sudo apt remove docker; sudo apt remove docker-engine; sudo apt remove docker.io; sudo apt remove containerd; sudo apt remove runc
# Mise à jour de la liste des paquets
sudo apt update
# Ajout de certaines dépendances (si nécessaire) pour ajouter le repository Docker
sudo apt install -y ca-certificates curl gnupg lsb-release
# Ajout de la clé GPG officielle de Docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Installation du repository (stable) Docker
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Mise à jour de la liste des paquets
sudo apt update
# Installation de Docker
sudo apt install -y docker-ce docker-ce-cli containerd.io
# Vérifiez que Docker soit bien installé
docker -v

4. Installation de Docker Compose

Votre VM tourne sur une architecture ARM64, Docker Compose a besoin d'être installé via pip.

Basé sur la documentation officielle (voir "Alternative install options")

Jouez les commandes suivantes, ligne par ligne:

# Installation de python3-pip
sudo apt install -y python3-pip
# Installation de Docker Compose
sudo pip3 install docker-compose

5. Assigner une adresse IP fixe à votre VM

Étant un serveur, votre machine virtuelle a besoin d'avoir une adresse IP statique pour ne pas avoir à tout reconfigurer en cas de crash/redémarrage de votre Freebox.

  • Sur votre Freebox OS, ouvrez le menu "VMs"
  • Sélectionnez votre VM parmis la liste de VMs sur la gauche
  • Cliquez sur le bouton "Réseau", puis sur "Configurer un bail DHCP"
  • Choisissez une adresse IP disponible sur votre réseau ou conservez celle suggérée (l'adresse IP actuelle de votre VM).
  • Cliquez sur "Enregistrer".

Maintenant, si vous avez utilisé une autre adresse IP que celle proposée par défaut, redémarrez votre VM pour que la nouvelle adresse IP s'applique.

@gaetan-cordonnier
Copy link

Prérequis: disposer d'un disque dur sur la freebox

@tomsihap
Copy link

Dorénavant pour installer docker compose (voir: https://docs.docker.com/compose/install/linux/) :

sudo apt-get update
sudo apt-get install docker-compose-plugin

// Check your docker compose install
docker compose version

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment