Aller au contenu
  1. Docs/
  2. K3s Kubernetes/

Docker setup

·Temps de lecture : 2 minutes· loading · loading · ·
K3s Kubernetes Docker OpenFaaS ARM64 Registry Buildx Homelab DevOps
ksh2177
Auteur
ksh2177
Ingénieur DevOps passionné par l’automatisation, la fiabilité et le design système.
Table des matières

Puisque je vais utiliser Docker pour créer mes fonctions OpenFaaS, je dois installer Docker et y avoir buildx.

Je ne fais cela que sur l’un de mes nœuds, control00, afin de pouvoir créer des images natives arm64 et les envoyer au registre, et également créer des fonctions OpenFaaS. Il n’est pas recommandé de créer des fonctions OpenFaaS sur le même nœud où le serveur s’exécute, et Alex Ellis m’a dit personnellement que ce n’était pas la façon de procéder! Vous devez créer sur votre client et envoyer le fichier vers la passerelle OpenFaaS à partir de là, et ainsi de suite… Cependant, je peux confirmer que cela fonctionne très bien, et c’est moins compliqué pour moi car je peux également configurer le worker GitLab sur ce nœud et faire en sorte que mes éléments soient créés automatiquement à chaque fois que je le fais vers mon GitLab local (GitLab est sur un autre serveur de mon réseau, en dehors du cadre de ce guide).

🚮 Commençons par faire table rase
#

Supprimez l’installation que vous avez actuellement.

sudo apt remove docker docker-engine docker.io containerd runc

ℹ️ Installer Docker
#

Pour installer Docker sur DietPi arm64, nous allons suivre à peu près les étapes officielles. 🙂

📥 Installer les prérequis
#

sudo apt-get install ca-certificates curl gnupg lsb-release

📥 Installer la clé GPG
#

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

📥 Installer le référentiel
#

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

📥 Installer Docker lui-même
#

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

📝 Modifier les paramètres de Docker
#

Ajouter /etc/docker/daemon.json une configuration pour le démon Docker.

{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "insecure-registries": ["registry.cube.local:5000"],
  "experimental": true,
  "log-driver": "json-file",
  "storage-driver": "overlay2",
  "log-opts": {
    "max-size": "100m"
  }
}
insecure-registries:["registry.cube.local:5000"] Ceci est destiné au registre privé non sécurisé exécuté sur HTTP, si vous utilisez TLS, vous n’avez pas besoin de cette ligne.

✅ Activer au démarrage et démarrer le démon Docker
#

sudo systemctl enable docker
sudo systemctl start docker

➕ Ajout de la prise en charge du multi-architecture
#

Certains packages supplémentaires sont nécessaires si vous souhaitez utiliser OpenFaaS et construire sur arm64.

#Devrait déjà être installé
sudo apt-get install binfmt-support qemu-user-static

Articles connexes

Network settings
·Temps de lecture : 4 minutes· loading · loading
K3s Kubernetes MetalLB LoadBalancer Helm Network ClusterIP Homelab DevOps
Déploiement de MetalLB pour gérer des adresses IP externes avec K3s : installation via Helm, configuration d’un pool d’IP et vérifications réseau.
Storage settings
·Temps de lecture : 9 minutes· loading · loading
K3s Kubernetes Storage Longhorn Ansible Raspberry Pi PersistentVolume DevOps Homelab
Choix, préparation et installation de Longhorn comme solution de stockage persistant Kubernetes pour K3s sur Raspberry Pi, avec montage automatique via Ansible.
Helm arkade
·Temps de lecture : 2 minutes· loading · loading
K3s Kubernetes Helm Arkade Package Manager CLI Tools DevOps Homelab
Installation de Helm et Arkade sur le cluster K3s : deux outils indispensables pour déployer et gérer des applications Kubernetes simplement.
Os settings
·Temps de lecture : 1 minutes· loading · loading
K3s Kubernetes DietPi Linux OS Iptables Ansible Homelab DevOps
Réglages système post-installation pour DietPi : mise à jour de l’OS, configuration réseau, iptables et préparation à Kubernetes.
Conf noeuds
·Temps de lecture : 4 minutes· loading · loading
K3s Kubernetes Ansible Raspberry Pi Homelab SSH Inventory Automation DevOps
Préparer les nœuds Raspberry Pi pour le cluster K3s : connectivité, SSH sans mot de passe, configuration d’Ansible et inventaire dynamique.
Kube install
·Temps de lecture : 4 minutes· loading · loading
K3s Kubernetes Cluster Control Plane Ansible Labels Taints Homelab Automation
Installation de K3s sur le nœud maître, ajout des workers via Ansible, configuration des rôles, labels et variables d’environnement Kubernetes.
Design goal
·Temps de lecture : 2 minutes· loading · loading
K3s Kubernetes Ansible Raspberry Pi Homelab SSH Automation Cluster Infra-as-Code
Préparation des nœuds Raspberry Pi avant le déploiement du cluster K3s : réseau, SSH, Ansible et inventaire automatisé.
Matériel
·Temps de lecture : 2 minutes· loading · loading
K3s Kubernetes Raspberry Pi Homelab Hardware Cluster Storage Network
Liste complète du matériel utilisé pour construire un cluster K3s sur Raspberry Pi : compute, stockage, réseau et tests de performance.
Noeuds
·Temps de lecture : 6 minutes· loading · loading
K3s Kubernetes DietPi Raspberry Pi Homelab Automation Headless SSH OS Boot
Installation et configuration automatisée de DietPi sur Raspberry Pi : headless boot, firmware, SSH, IP statique et premiers réglages système.