Skip to main content

45 posts tagged with "DevOps"

View All Tags

Containerization vs Virtualization

· 2 min read

Docker et les machines virtuelles (VM) sont des outils de virtualisation, mais ils fonctionnent différemment. Docker virtualise la couche des applications du système d'exploitation, utilisant le noyau de l'hôte, tandis qu'une VM virtualise l'ensemble du système d'exploitation, incluant son propre noyau et sa couche d'applications. Cette différence entraîne plusieurs distinctions majeures.

Docker : conteneurs

· 3 min read

Les conteneurs Docker sont des unités logicielles légères et portables qui encapsulent une application et ses dépendances dans une image. Ces images sont composées de plusieurs couches, souvent basées sur une distribution Linux légère comme Alpine, pour minimiser la taille. Les conteneurs permettent de maintenir des applications isolées et cohérentes, indépendamment de l'environnement d'exécution.

Docker

· 6 min read

Docker est de plus en plus populaire car il résout des problèmes courants dans le développement logiciel, en particulier ceux liés à la configuration de l'environnement et à la compatibilité. Les applications modernes utilisent souvent une combinaison de différentes technologies, chacune avec des dépendances de version spécifiques. Ces applications doivent fonctionner de manière cohérente dans divers environnements (développement, test, production), qui peuvent différer en termes de système d'exploitation, de version et de matériel. Sans Docker, chaque environnement doit être configuré avec les versions correctes des services, ce qui entraîne des problèmes de compatibilité et des configurations complexes.

Registry : GitHub GHCR

· 5 min read

GitHub Container Registry (GHCR) est un service d'hébergement de packages logiciels proposé par GitHub, permettant aux utilisateurs de stocker des packages privés ou publics et de les utiliser comme dépendances dans leurs projets. Compatible avec plusieurs langages de programmation, GitHub Packages propose des registres pour des gestionnaires de packages tels que npm, RubyGems, Maven, Gradle, Docker, et NuGet. L'authentification sur GitHub Packages se fait exclusivement via un "personal access token (classic)". Les utilisateurs doivent disposer de ce token pour effectuer des opérations telles que la publication, l'installation et la suppression de packages, qu'ils soient publics, privés ou internes. Pour les packages privés, GitHub Packages applique des limites de stockage et de transfert de données en fonction du plan du compte. La gestion des packages peut être réalisée à travers l'interface utilisateur GitHub ou via l'API REST. Des webhooks peuvent également être configurés pour suivre des événements liés aux packages, comme la publication ou la mise à jour.

GitHub Actions : action réutilisable

· 5 min read

GitHub Actions permet de créer des actions réutilisables, qui sont des blocs de code personnalisés pouvant être utilisés dans plusieurs workflows. Ces actions peuvent être partagées au sein d'une organisation ou rendues publiques pour que d'autres utilisateurs puissent les utiliser. Les actions réutilisables sont particulièrement utiles pour automatiser des tâches courantes, telles que le déploiement, les tests ou la gestion des secrets, tout en assurant une cohérence et une maintenabilité à travers différents projets.

GitHub Actions : architecture

· 3 min read

L'objectif est de créer une architecture CI/CD complète pour un projet de développement adressant une technologie (par exemple ROS). Cette architecture doit être :

  • facilement réutilisable dans d'autres projets
  • éviter la duplication de code
  • maintenable et évolutive aisément
  • applicable à d'autres projets

GitHub Actions

· 4 min read

Dans le monde du développement logiciel, l'automatisation est devenue une nécessité pour améliorer l'efficacité et réduire les erreurs humaines. GitHub Actions est une plateforme puissante qui permet d'automatiser les workflows de développement et de déploiement. Dans cet article, nous allons explorer les concepts de base de GitHub Actions, ses avantages, et fournir des exemples concrets pour vous aider à démarrer.

GitHub Actions : ARC

· 4 min read

Actions Runner Controller (ARC) est un opérateur de Kubernetes qui orchestre et gère les runners auto-hébergés pour les actions GitHub.

GitHub Actions : Self-Host Runner

· 4 min read

Un runner est une machine virtuelle ou physique qui exécute des jobs dans un workflow. Les runners peuvent être hébergés par GitHub ou auto-hébergés. Les runners hébergés par GitHub sont exécutés dans un environnement de cloud partagé et sont gérés par GitHub et peuvent entrainer des surcouts. Les runners auto-hébergés sont exécutés sur une machine que vous possédez et gérez.