[{"data":1,"prerenderedAt":708},["ShallowReactive",2],{"/fr-fr/blog/kubernetes-the-container-orchestration-solution/":3,"navigation-fr-fr":35,"banner-fr-fr":455,"footer-fr-fr":467,"GitLab Team":679,"next-steps-fr-fr":693},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"seo":8,"content":16,"config":25,"_id":28,"_type":29,"title":30,"_source":31,"_file":32,"_stem":33,"_extension":34},"/fr-fr/blog/kubernetes-the-container-orchestration-solution","blog",false,"",{"title":9,"description":10,"ogTitle":9,"ogDescription":10,"noIndex":6,"ogImage":11,"ogUrl":12,"ogSiteName":13,"ogType":14,"canonicalUrls":12,"schema":15},"Kubernetes : tout savoir sur la solution d’orchestration des conteneurs","Kubernetes, également connue sous son diminutif K8s, est une solution open source incontournable pour déployer et maintenir des applications, notamment dans le cloud.","https://res.cloudinary.com/about-gitlab-com/image/upload/v1749660215/Blog/Hero%20Images/kubernetes-container-orchestration-solution.jpg","https://about.gitlab.com/blog/kubernetes-the-container-orchestration-solution","https://about.gitlab.com","article","\n                        {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Article\",\n        \"headline\": \"Kubernetes : tout savoir sur la solution d’orchestration des conteneurs\",\n        \"author\": [{\"@type\":\"Person\",\"name\":\"GitLab Team\"}],\n        \"datePublished\": \"2024-07-25\",\n      }",{"title":9,"description":10,"authors":17,"heroImage":11,"date":19,"body":20,"category":21,"tags":22},[18],"GitLab Team","2024-07-25","Ce logiciel permet d'automatiser les tâches de déploiement et de gestion d'applications conteneurisées à grande échelle. \n\nKubernetes est devenu au fil du temps un outil essentiel en développement d'applications dans de nombreux domaines, comme les [microservices](https://about.gitlab.com/fr-fr/topics/microservices/ \"Que sont les microservices ? \"), les applications web et les bases de données. Ses performances et son évolutivité en font aujourd’hui un standard reconnu en gestion de conteneurs.\n\nDécouvrez dans cet article tout ce que vous devez savoir sur Kubernetes. \n\n- [Qu'est-ce que Kubernetes ?](#quest-ce-que-kubernetes)\n- [Comment fonctionne une architecture Kubernetes ?](#comment-fonctionne-une-architecture-kubernetes)\n- [Quels sont les avantages de Kubernetes ?](#quels-sont-les-avantages-de-kubernetes)\n- [Quelles sont les limites de Kubernetes ?](#quelles-sont-les-limites-de-kubernetes)\n- [Utiliser Kubernetes au sein de vos équipes](#utiliser-kubernetes-au-sein-de-vos-equipes)\n- [Kubernetes, Git et GitLab](#kubernetes-git-et-gitlab)\n\n## Qu'est-ce que Kubernetes ?\n\nKubernetes est un système [__open source__](https://about.gitlab.com/fr-fr/blog/what-is-open-source/ \"Qu'est-ce que l'open source ?\") qui permet d’orchestrer efficacement les conteneurs d'une application informatique. La __conteneurisation__ est une approche largement plébiscitée en développement d'applications TIC, particulièrement dans les domaines de la transformation digitale et du cloud.\n\nSi la notion de conteneurs ne vous est pas familière, sachez qu'il s'agit d'une méthode de développement d'application qui consiste à regrouper les composants d'une application dans des unités standardisées – des conteneurs – qui sont indépendants des appareils et des systèmes d'exploitation sur lesquels ils se trouvent. En isolant les applications de leur environnement, cette technologie __facilite leur déploiement, leur portabilité, et limite des conflits d'interopérabilité.__\n\nC'est à ce niveau que nous utilisons le logiciel Kubernetes. Certes, les conteneurs permettent de découper les applications en modules plus petits et autonomes, facilitant ainsi leur déploiement. Mais pour que les conteneurs puissent interagir au sein d'une application, un système de gestion englobant ces modules est nécessaire. C'est précisément ce que Kubernetes permet de faire ! Kubernetes fournit une plateforme pour contrôler où et comment les conteneurs s'exécutent, de façon à orchestrer et à planifier leur exécution pour gérer des applications conteneurisées à grande échelle. \n\n## Comment fonctionne une architecture Kubernetes ?\n\nPour comprendre comment fonctionne une __architecture Kubernetes__, il est essentiel de se familiariser avec certaines notions, à commencer par celle du cluster, qui est l'échelle la plus large de l'architecture. \n\n### Cluster Kubernetes\n\nUn __cluster Kubernetes__ se définit comme l'ensemble des __machines virtuelles__ ou physiques sur lesquelles est installée une __application conteneurisée__.\n\n![Components of Kubernetes](https://res.cloudinary.com/about-gitlab-com/image/upload/v1749673941/Blog/Content%20Images/components-of-kubernetes.png)\n*Source: [Kubernetes](https://kubernetes.io/docs/concepts/overview/components/ \"Kubernetes website\")*.\n\nCe cluster comprend différents éléments :\n\n- __Nœud (Node) :__ c'est une unité de travail dans un cluster Kubernetes. Il s'agit d'une machine virtuelle (VM) ou physique (bare-metal) qui exécute des tâches pour le compte de l'application.\n- __Pod :__ un pod est la plus petite unité déployable dans Kubernetes. Il représente un groupe de conteneurs fonctionnant ensemble sur un même nœud. Les conteneurs à l'intérieur d'un pod partagent le même réseau et peuvent communiquer entre eux via localhost.\n- __Service :__ un service Kubernetes permet d'exposer un pod au réseau ou à d'autres pods. Il offre un point d'accès stable et bien défini vers les applications hébergées par les pods.\n- __Volume :__ une abstraction de dossier qui permet de résoudre des problèmes de partage et de récupération des fichiers au sein d'un conteneur.\n- __Namespace (espace de nommage) :__ un namespace permet de grouper et d’isoler des ressources afin de former un cluster virtuel.\n\nL'architecture de Kubernetes repose sur deux principaux types de nœuds : le __nœud maître__ *(master)* et les nœuds ouvriers ou nœuds de travail *(__worker nodes__)*. Le nœud maître est responsable de la gestion globale du cluster Kubernetes et de la communication avec les __nœuds de travail__. Parmi ses composantes clés, l'API est le point de contact central pour toutes les communications entre les utilisateurs et le cluster. L'[Etcd](https://kubernetes.io/fr/docs/concepts/overview/components/#etcd \"Etcd\") est la base de données clé-valeur où sont stockées les configurations, l'état du système et les métadonnées des objets. Le controller manager coordonne les opérations d'arrière-plan telles que la réplication des pods, et le scheduler place les pods sur les nœuds en fonction des ressources disponibles.\n\nLes nœuds de travail, quant à eux, sont les machines qui exécutent et gèrent les applications contenues dans les pods. En leur sein, le [kubelet](https://kubernetes.io/fr/docs/concepts/overview/components/#kubelet \"Kubelet\") est l'agent qui s'exécute sur chaque nœud et communique avec le maître pour recevoir les commandes et transmettre l'état des pods. Le proxy réseau ou [kube-proxy](https://kubernetes.io/fr/docs/concepts/overview/components/#kube-proxy \"Kube-proxy\") maintient les règles réseau sur les nœuds pour permettre l'accès aux services depuis l'extérieur du cluster Kubernetes. Enfin, le container runtime est le logiciel responsable de l'exécution et la gestion des conteneurs au sein des pods.\n\n### Boucles de réconciliation\n\nLes __boucles de réconciliation (ou control loops)__ de K8s sont un mécanisme qui permet au système de maintenir un état cohérent et fiable. Kubernetes suit un __modèle déclaratif__, où l'utilisateur spécifie l'__état désiré__ d'un cluster à travers des manifestes YAML, comme le nombre de réplicas d’un déploiement, la configuration réseau, les volumes attachés, et plus encore. L’__état courant__, en revanche, est la représentation en temps réel de l’état effectif des ressources dans le cluster. \n\nLa __boucle de réconciliation__ est un processus continu dans lequel les __contrôleurs Kubernetes__ (comme le Deployment Controller, le Node Controller ou le ReplicaSet Controller) surveillent l’état actuel et tentent de l’ajuster pour qu’il corresponde à l’état souhaité. Lorsqu’une divergence est détectée (ex. un pod est supprimé ou un nœud devient indisponible), Kubernetes agit automatiquement pour restaurer la conformité en appliquant les correctifs nécessaires. Ce mécanisme permet à Kubernetes d'être __auto-réparateur__ et de garantir la haute disponibilité et la stabilité des applications déployées.\n\n### Manifestes\n\nPour décrire et gérer les ressources dans Kubernetes, nous utilisons des manifestes, c'est-à-dire des fichiers de configuration au format YAML ou JSON. Ces fichiers définissent l’état désiré d’un objet Kubernetes, comme un Pod, un Service ou un Déploiement. Un manifeste spécifie des paramètres essentiels tels que l’image du conteneur, le __nombre de réplicas__, les volumes ou les règles de mise en réseau. Une fois appliqué avec la commande `kubectl apply -f`, Kubernetes compare cet état désiré à l’état courant du cluster et ajuste les ressources pour garantir leur conformité. \n\n### Et Docker dans tout ça ?\n\nParmi tous les composants d'un cluster K8s, le choix du runtime au sein des nœuds de travail est important. Différents logiciels sont disponibles pour cela, comme rkt ou CRI-O, mais Docker est l'outil le plus couramment utilisé. Alors, qu'est-ce que Docker ? Et quelle est la différence entre Docker et Kubernetes ?\n\nDocker est une solution open source qui s'utilise spécifiquement au niveau des conteneurs. Il permet de __packager les conteneurs__ dans un format standardisé et léger, ce qui augmente leur portabilité dans différents environnements. C'est donc un outil complémentaire à K8s qui facilite la gestion des conteneurs en eux-mêmes, tandis que Kubernetes simplifie leur intégration et communication au sein de l'application.\n\n## Quels sont les avantages de Kubernetes ?\n\nLancée par Google en 2014, la première version stable de Kubernetes est apparue en juillet 2015. Depuis lors, la popularité de ce logiciel ne se dément pas, faisant de K8s une référence dans le domaine de l'orchestration de conteneurs, particulièrement pour les architectures orientées microservices. Mais alors, pourquoi utiliser Kubernetes ? Ce succès s'explique avant tout par les excellentes performances de ce logiciel en __orchestration de conteneurs__. \n\nLes avantages de Kubernetes sont nombreux : \n\n- __Automatisation :__  Kubernetes facilite l'automatisation des tâches liées au déploiement, au dimensionnement et à la mise à jour des applications conteneurisées.\n- __Flexibilité :__ le logiciel s'adapte à différentes technologies de conteneurs, diverses architectures matérielles et systèmes d'exploitation.\n- __Scalabilité :__  K8s permet de déployer et de gérer facilement des milliers de conteneurs, quel que soit leur état : en cours d'exécution, en pause, ou arrêtés.\n- __Migration :__  il est possible de migrer facilement des applications vers Kubernetes, sans avoir à modifier le code source.\n- __Support multi-cluster :__ Kubernetes permet de gérer de manière centralisée plusieurs clusters de conteneurs répartis sur différentes infrastructures.\n- __Gestion des mises à jour :__ Le logiciel prend en charge les déploiements rolling-update pour mettre à jour les applications sans interruption de service. \n\n### Un écosystème robuste et évolutif\n\nKubernetes se distingue ainsi par sa capacité à gérer les conteneurs de manière performante et sûre, tout en maintenant une indépendance vis-à-vis des fournisseurs d'infrastructures cloud. Son architecture modulaire s'adapte aux besoins spécifiques de chaque entreprise, et supporte un très large éventail d'applications et de services (services Web, traitement de données, applications mobiles, etc.).\n\nDans la course à la transformation digitale, Kubernetes convainc aussi grâce à son écosystème riche et extensible au sein de la communauté open source. Géré par la *__Cloud Native Computing Foundation (CNCF)__*, K8s est porté par des milliers de développeurs et développeuses partout dans le monde. Ils contribuent au développement du projet et à l'amélioration continue de ses fonctionnalités. \n\n## Quelles sont les limites de Kubernetes ?\n\nLes avantages de Kubernetes en font un choix sûr pour de nombreuses équipes de développement dans le domaine des applications [cloud-native](https://about.gitlab.com/fr-fr/topics/cloud-native/ \"Qu'est-ce que l'approche cloud-native ?\"). Néanmoins, il convient de souligner certaines limites. Kubernetes demande un solide bagage technique et de se former à de nouveaux concepts et méthodes de développement. Le logiciel peut être complexe à configurer en début de projet. La configuration est cependant cruciale, notamment pour sécuriser la plateforme. Disposer d'une équipe de développement expérimentée en __projet K8s__ constitue donc un sérieux atout. \n\nAutre difficulté, la mise en place et la maintenance d'une architecture K8s requièrent aussi du temps et des ressources, notamment pour mettre à jour ses différents composants et logiciels. Cela pose la question d'un possible surdimensionnement. Dans le cas d'une petite application, ou d'un projet sans challenge particulier en termes de scalabilité, une architecture plus basique peut suffire tout en se montrant plus économe. \n\n## Utiliser Kubernetes au sein de vos équipes\n\nDes dizaines de milliers d'entreprises ont adopté une architecture Kubernetes pour mener à bien leur transition digitale. K8s est utilisé par des sociétés de toutes tailles, des startups aux multinationales. \n\nLes exemples d'intégrations réalisées avec succès sont nombreux, comme pour la société Haven Technologies. Haven Technologies a migré ses services SaaS vers K8s et mise notamment sur une stratégie Kubernetes avec la plateforme DevSecOps de GitLab afin d’aider ses équipes à améliorer l'efficacité, la sécurité et la vitesse de développement logiciel. Consultez [notre cas client](https://about.gitlab.com/customers/haven-technologies/ \"Cas client Haven Technologies\") pour en savoir plus !   \n\n## Kubernetes, Git et GitLab\n\nKubernetes, Git et GitLab sont des éléments essentiels du paysage [DevOps](https://about.gitlab.com/fr-fr/topics/devops/ \"Que signifie DevOps ? \"). Kubernetes offre une grande flexibilité pour déployer et gérer les différents composants d’une application. De son côté, GitLab construit autour de [Git](https://about.gitlab.com/fr-fr/blog/what-is-git/ \"Qu'est-ce que Git ? \") et de son système de contrôle de version natif, permet un suivi rigoureux et précis du code source et des changements, tout en fournissant une suite d'outils complète pour gérer l'ensemble du cycle de vie du développement logiciel. \n\nCette combinaison, associée à une [approche GitOps](https://about.gitlab.com/fr-fr/topics/gitops/ \"Approche GitOps\"), dont l’objectif est d’automatiser le provisionnement des infrastructures cloud modernes, crée un environnement agile de développement et déploiement des applications et permet ainsi de fournir des logiciels puissants, flexibles et évolutifs. Pour aller plus loin, [découvrez toutes les solutions de GitLab pour lancer une application avec Kubernetes](https://about.gitlab.com/fr-fr/solutions/kubernetes/ \"Solutions GitLab pour lancer une application avec Kubernetes\"). \n\n## FAQ sur Kubernetes\n\n### Quelles sont les solutions concurrentes à K8s ?\n\nIl existe plusieurs alternatives à Kubernetes, parmi lesquelles Docker Swarm ou Marathon. Cependant, Kubernetes est considérée comme la solution la plus mature et la plus populaire sur le marché. Sa large base d'utilisateurs, sa documentation abondante et son support actif par la communauté font de Kubernetes un excellent choix pour ceux qui cherchent à adopter un système d'orchestration de conteneurs.\n\n### Qu’est-ce qu’un cluster Kubernetes ?\n\nUn cluster Kubernetes est composé d'un nœud maître et de plusieurs nœuds de travail. Le nœud maître est responsable de la coordination des tâches dans le cluster, tandis que les nœuds de travail exécutent ces tâches d'orchestration et hébergent les conteneurs. Les clusters K8s sont hautement évolutifs - on peut ajouter ou supprimer des nœuds pour adapter les ressources du cluster aux besoins de l'application.\n\n### Quelle est la différence entre Kubernetes et Docker ?\n\nDocker permet de créer, exécuter et gérer des conteneurs individuellement, tandis que Kubernetes orchestre ces conteneurs sur un cluster en automatisant leur déploiement, mise à l’échelle et maintenance. Docker gère l’environnement d’exécution, Kubernetes assure la coordination et la résilience des applications conteneurisées.\n\n### Comment débuter avec Kubernetes ?\n\nPour commencer, il est nécessaire d'installer le logiciel Kubernetes sur un environnement compatible (Linux, macOS ou Windows). Kubernetes peut être installé au sein d'un hébergement classique mais aussi dans un environnement cloud ([Google Kubernetes Engine](https://about.gitlab.com/fr-fr/partners/technology-partners/google-cloud-platform/ \"Google Kubernetes Engine\") ou [Amazon EKS](https://about.gitlab.com/fr-fr/partners/technology-partners/aws/ \"Amazon EKS\") par exemple). Les utilisateurs peuvent télécharger et installer Kubernetes directement depuis leur site officiel, puis procéder à la configuration initiale nécessaire pour connecter les nœuds maître et de travail. Une fois cette étape réalisée, l'utilisateur est prêt à déployer une première application en utilisant Kubernetes.\n\n### Pourquoi choisir Kubernetes ?\n\nKubernetes offre une grande flexibilité et une portabilité totale entre différentes plateformes cloud ou infrastructures sur site. Grâce à l'automatisation des tâches d'orchestration, K8s permet d'optimiser les ressources, de réduire les coûts d'exploitation et de libérer du temps pour les développeurs et les administrateurs systèmes. Enfin, l'écosystème Kubernetes est vaste et continuellement développé par une large communauté open source, ce qui permet d'innover rapidement.\n","open-source",[23,24],"kubernetes","open source",{"slug":26,"featured":6,"template":27},"kubernetes-the-container-orchestration-solution","BlogPost","content:fr-fr:blog:kubernetes-the-container-orchestration-solution.yml","yaml","Kubernetes The Container Orchestration Solution","content","fr-fr/blog/kubernetes-the-container-orchestration-solution.yml","fr-fr/blog/kubernetes-the-container-orchestration-solution","yml",{"_path":36,"_dir":37,"_draft":6,"_partial":6,"_locale":7,"data":38,"_id":451,"_type":29,"title":452,"_source":31,"_file":453,"_stem":454,"_extension":34},"/shared/fr-fr/main-navigation","fr-fr",{"logo":39,"freeTrial":44,"sales":49,"login":54,"items":59,"search":392,"minimal":428,"duo":442},{"config":40},{"href":41,"dataGaName":42,"dataGaLocation":43},"/fr-fr/","gitlab logo","header",{"text":45,"config":46},"Commencer un essai gratuit",{"href":47,"dataGaName":48,"dataGaLocation":43},"https://gitlab.com/-/trial_registrations/new?glm_source=about.gitlab.com&glm_content=default-saas-trial/","free trial",{"text":50,"config":51},"Contacter l'équipe commerciale",{"href":52,"dataGaName":53,"dataGaLocation":43},"/fr-fr/sales/","sales",{"text":55,"config":56},"Connexion",{"href":57,"dataGaName":58,"dataGaLocation":43},"https://gitlab.com/users/sign_in/","sign in",[60,104,203,208,313,373],{"text":61,"config":62,"cards":64,"footer":87},"Plateforme",{"dataNavLevelOne":63},"platform",[65,71,79],{"title":61,"description":66,"link":67},"La plateforme DevSecOps alimentée par l'IA la plus complète",{"text":68,"config":69},"Découvrir notre plateforme",{"href":70,"dataGaName":63,"dataGaLocation":43},"/fr-fr/platform/",{"title":72,"description":73,"link":74},"GitLab Duo (IA)","Créez des logiciels plus rapidement en tirant parti de l'IA à chaque étape du développement",{"text":75,"config":76},"Découvrez GitLab Duo",{"href":77,"dataGaName":78,"dataGaLocation":43},"/fr-fr/gitlab-duo/","gitlab duo ai",{"title":80,"description":81,"link":82},"Choisir GitLab","10 raisons pour lesquelles les entreprises choisissent GitLab",{"text":83,"config":84},"En savoir plus",{"href":85,"dataGaName":86,"dataGaLocation":43},"/fr-fr/why-gitlab/","why gitlab",{"title":88,"items":89},"Démarrer avec",[90,95,100],{"text":91,"config":92},"Ingénierie de plateforme",{"href":93,"dataGaName":94,"dataGaLocation":43},"/fr-fr/solutions/platform-engineering/","platform engineering",{"text":96,"config":97},"Expérience développeur",{"href":98,"dataGaName":99,"dataGaLocation":43},"/fr-fr/developer-experience/","Developer experience",{"text":101,"config":102},"MLOps",{"href":103,"dataGaName":101,"dataGaLocation":43},"/fr-fr/topics/devops/the-role-of-ai-in-devops/",{"text":105,"left":106,"config":107,"link":109,"lists":113,"footer":185},"Produit",true,{"dataNavLevelOne":108},"solutions",{"text":110,"config":111},"Voir toutes les solutions",{"href":112,"dataGaName":108,"dataGaLocation":43},"/fr-fr/solutions/",[114,140,163],{"title":115,"description":116,"link":117,"items":122},"Automatisation","CI/CD et automatisation pour accélérer le déploiement",{"config":118},{"icon":119,"href":120,"dataGaName":121,"dataGaLocation":43},"AutomatedCodeAlt","/fr-fr/solutions/delivery-automation/","automated software delivery",[123,127,131,136],{"text":124,"config":125},"CI/CD",{"href":126,"dataGaLocation":43,"dataGaName":124},"/fr-fr/solutions/continuous-integration/",{"text":128,"config":129},"Développement assisté par l'IA",{"href":77,"dataGaLocation":43,"dataGaName":130},"AI assisted development",{"text":132,"config":133},"Gestion du code source",{"href":134,"dataGaLocation":43,"dataGaName":135},"/fr-fr/solutions/source-code-management/","Source Code Management",{"text":137,"config":138},"Livraison de logiciels automatisée",{"href":120,"dataGaLocation":43,"dataGaName":139},"Automated software delivery",{"title":141,"description":142,"link":143,"items":148},"Securité","Livrez du code plus rapidement sans compromettre la sécurité",{"config":144},{"href":145,"dataGaName":146,"dataGaLocation":43,"icon":147},"/fr-fr/solutions/security-compliance/","security and compliance","ShieldCheckLight",[149,153,158],{"text":150,"config":151},"Sécurité et conformité",{"href":145,"dataGaLocation":43,"dataGaName":152},"Security & Compliance",{"text":154,"config":155},"Sécurité de la chaîne d'approvisionnement logicielle",{"href":156,"dataGaLocation":43,"dataGaName":157},"/fr-fr/solutions/supply-chain/","Software supply chain security",{"text":159,"config":160},"Conformité et gouvernance",{"href":161,"dataGaLocation":43,"dataGaName":162},"/fr-fr/solutions/continuous-software-compliance/","Compliance and governance",{"title":164,"link":165,"items":170},"Mesures",{"config":166},{"icon":167,"href":168,"dataGaName":169,"dataGaLocation":43},"DigitalTransformation","/fr-fr/solutions/visibility-measurement/","visibility and measurement",[171,175,180],{"text":172,"config":173},"Visibilité et mesures",{"href":168,"dataGaLocation":43,"dataGaName":174},"Visibility and Measurement",{"text":176,"config":177},"Gestion de la chaîne de valeur",{"href":178,"dataGaLocation":43,"dataGaName":179},"/fr-fr/solutions/value-stream-management/","Value Stream Management",{"text":181,"config":182},"Données d'analyse et informations clés",{"href":183,"dataGaLocation":43,"dataGaName":184},"/fr-fr/solutions/analytics-and-insights/","Analytics and insights",{"title":186,"items":187},"GitLab pour",[188,193,198],{"text":189,"config":190},"Entreprises",{"href":191,"dataGaLocation":43,"dataGaName":192},"/fr-fr/enterprise/","enterprise",{"text":194,"config":195},"PME",{"href":196,"dataGaLocation":43,"dataGaName":197},"/fr-fr/small-business/","small business",{"text":199,"config":200},"Secteur public",{"href":201,"dataGaLocation":43,"dataGaName":202},"/fr-fr/solutions/public-sector/","public sector",{"text":204,"config":205},"Tarifs",{"href":206,"dataGaName":207,"dataGaLocation":43,"dataNavLevelOne":207},"/fr-fr/pricing/","pricing",{"text":209,"config":210,"link":212,"lists":216,"feature":300},"Ressources",{"dataNavLevelOne":211},"resources",{"text":213,"config":214},"Afficher toutes les ressources",{"href":215,"dataGaName":211,"dataGaLocation":43},"/fr-fr/resources/",[217,250,272],{"title":218,"items":219},"Premiers pas",[220,225,230,235,240,245],{"text":221,"config":222},"Installation",{"href":223,"dataGaName":224,"dataGaLocation":43},"/fr-fr/install/","install",{"text":226,"config":227},"Guides de démarrage rapide",{"href":228,"dataGaName":229,"dataGaLocation":43},"/fr-fr/get-started/","quick setup checklists",{"text":231,"config":232},"Apprentissage",{"href":233,"dataGaLocation":43,"dataGaName":234},"https://university.gitlab.com/","learn",{"text":236,"config":237},"Documentation sur le produit",{"href":238,"dataGaName":239,"dataGaLocation":43},"https://docs.gitlab.com/","product documentation",{"text":241,"config":242},"Vidéos sur les bonnes pratiques",{"href":243,"dataGaName":244,"dataGaLocation":43},"/fr-fr/getting-started-videos/","best practice videos",{"text":246,"config":247},"Intégrations",{"href":248,"dataGaName":249,"dataGaLocation":43},"/fr-fr/integrations/","integrations",{"title":251,"items":252},"Découvrir",[253,258,262,267],{"text":254,"config":255},"Histoires de succès client",{"href":256,"dataGaName":257,"dataGaLocation":43},"/fr-fr/customers/","customer success stories",{"text":259,"config":260},"Blog",{"href":261,"dataGaName":5,"dataGaLocation":43},"/fr-fr/blog/",{"text":263,"config":264},"Travail à distance",{"href":265,"dataGaName":266,"dataGaLocation":43},"https://handbook.gitlab.com/handbook/company/culture/all-remote/","remote",{"text":268,"config":269},"TeamOps",{"href":270,"dataGaName":271,"dataGaLocation":43},"/fr-fr/teamops/","teamops",{"title":273,"items":274},"Connecter",[275,280,285,290,295],{"text":276,"config":277},"Services GitLab",{"href":278,"dataGaName":279,"dataGaLocation":43},"/fr-fr/services/","services",{"text":281,"config":282},"Communauté",{"href":283,"dataGaName":284,"dataGaLocation":43},"/community/","community",{"text":286,"config":287},"Forum",{"href":288,"dataGaName":289,"dataGaLocation":43},"https://forum.gitlab.com/","forum",{"text":291,"config":292},"Événements",{"href":293,"dataGaName":294,"dataGaLocation":43},"/events/","events",{"text":296,"config":297},"Partenaires",{"href":298,"dataGaName":299,"dataGaLocation":43},"/fr-fr/partners/","partners",{"backgroundColor":301,"textColor":302,"text":303,"image":304,"link":308},"#2f2a6b","#fff","L'avenir du développement logiciel. Tendances et perspectives.",{"altText":305,"config":306},"carte promo The Source",{"src":307},"/images/navigation/the-source-promo-card.svg",{"text":309,"config":310},"Lire les articles les plus récents",{"href":311,"dataGaName":312,"dataGaLocation":43},"/fr-fr/the-source/","the source",{"text":314,"config":315,"lists":317},"Société",{"dataNavLevelOne":316},"company",[318],{"items":319},[320,325,331,333,338,343,348,353,358,363,368],{"text":321,"config":322},"À propos",{"href":323,"dataGaName":324,"dataGaLocation":43},"/fr-fr/company/","about",{"text":326,"config":327,"footerGa":330},"Emplois",{"href":328,"dataGaName":329,"dataGaLocation":43},"/jobs/","jobs",{"dataGaName":329},{"text":291,"config":332},{"href":293,"dataGaName":294,"dataGaLocation":43},{"text":334,"config":335},"Leadership",{"href":336,"dataGaName":337,"dataGaLocation":43},"/company/team/e-group/","leadership",{"text":339,"config":340},"Équipe",{"href":341,"dataGaName":342,"dataGaLocation":43},"/company/team/","team",{"text":344,"config":345},"Manuel",{"href":346,"dataGaName":347,"dataGaLocation":43},"https://handbook.gitlab.com/","handbook",{"text":349,"config":350},"Relations avec les investisseurs",{"href":351,"dataGaName":352,"dataGaLocation":43},"https://ir.gitlab.com/","investor relations",{"text":354,"config":355},"Centre de confiance",{"href":356,"dataGaName":357,"dataGaLocation":43},"/fr-fr/security/","trust center",{"text":359,"config":360},"Centre pour la transparence de l'IA",{"href":361,"dataGaName":362,"dataGaLocation":43},"/fr-fr/ai-transparency-center/","ai transparency center",{"text":364,"config":365},"Newsletter",{"href":366,"dataGaName":367,"dataGaLocation":43},"/company/contact/","newsletter",{"text":369,"config":370},"Presse",{"href":371,"dataGaName":372,"dataGaLocation":43},"/press/","press",{"text":374,"config":375,"lists":376},"Nous contacter",{"dataNavLevelOne":316},[377],{"items":378},[379,382,387],{"text":50,"config":380},{"href":52,"dataGaName":381,"dataGaLocation":43},"talk to sales",{"text":383,"config":384},"Aide",{"href":385,"dataGaName":386,"dataGaLocation":43},"/support/","get help",{"text":388,"config":389},"Portail clients GitLab",{"href":390,"dataGaName":391,"dataGaLocation":43},"https://customers.gitlab.com/customers/sign_in/","customer portal",{"close":393,"login":394,"suggestions":401},"Fermer",{"text":395,"link":396},"Pour rechercher des dépôts et des projets, connectez-vous à",{"text":397,"config":398},"gitlab.com",{"href":57,"dataGaName":399,"dataGaLocation":400},"search login","search",{"text":402,"default":403},"Suggestions",[404,407,412,414,419,424],{"text":72,"config":405},{"href":77,"dataGaName":406,"dataGaLocation":400},"GitLab Duo (AI)",{"text":408,"config":409},"Suggestions de code (IA)",{"href":410,"dataGaName":411,"dataGaLocation":400},"/fr-fr/solutions/code-suggestions/","Code Suggestions (AI)",{"text":124,"config":413},{"href":126,"dataGaName":124,"dataGaLocation":400},{"text":415,"config":416},"GitLab sur AWS",{"href":417,"dataGaName":418,"dataGaLocation":400},"/fr-fr/partners/technology-partners/aws/","GitLab on AWS",{"text":420,"config":421},"GitLab sur Google Cloud ",{"href":422,"dataGaName":423,"dataGaLocation":400},"/fr-fr/partners/technology-partners/google-cloud-platform/","GitLab on Google Cloud",{"text":425,"config":426},"Pourquoi utiliser GitLab ?",{"href":85,"dataGaName":427,"dataGaLocation":400},"Why GitLab?",{"freeTrial":429,"mobileIcon":434,"desktopIcon":439},{"text":430,"config":431},"Commencer votre essai gratuit",{"href":432,"dataGaName":48,"dataGaLocation":433},"https://gitlab.com/-/trials/new/","nav",{"altText":435,"config":436},"Icône GitLab",{"src":437,"dataGaName":438,"dataGaLocation":433},"/images/brand/gitlab-logo-tanuki.svg","gitlab icon",{"altText":435,"config":440},{"src":441,"dataGaName":438,"dataGaLocation":433},"/images/brand/gitlab-logo-type.svg",{"freeTrial":443,"mobileIcon":447,"desktopIcon":449},{"text":444,"config":445},"En savoir plus sur GitLab Duo",{"href":77,"dataGaName":446,"dataGaLocation":433},"gitlab duo",{"altText":435,"config":448},{"src":437,"dataGaName":438,"dataGaLocation":433},{"altText":435,"config":450},{"src":441,"dataGaName":438,"dataGaLocation":433},"content:shared:fr-fr:main-navigation.yml","Main Navigation","shared/fr-fr/main-navigation.yml","shared/fr-fr/main-navigation",{"_path":456,"_dir":37,"_draft":6,"_partial":6,"_locale":7,"title":457,"titleMobile":457,"button":458,"config":462,"_id":464,"_type":29,"_source":31,"_file":465,"_stem":466,"_extension":34},"/shared/fr-fr/banner","La plateforme GitLab Duo Agent est maintenant en bêta publique !",{"text":83,"config":459},{"href":460,"dataGaName":461,"dataGaLocation":43},"/fr-fr/gitlab-duo/agent-platform/","duo banner",{"layout":463},"release","content:shared:fr-fr:banner.yml","shared/fr-fr/banner.yml","shared/fr-fr/banner",{"_path":468,"_dir":37,"_draft":6,"_partial":6,"_locale":7,"data":469,"_id":675,"_type":29,"title":676,"_source":31,"_file":677,"_stem":678,"_extension":34},"/shared/fr-fr/main-footer",{"text":470,"source":471,"edit":477,"contribute":482,"config":487,"items":492,"minimal":666},"Git est une marque déposée de Software Freedom Conservancy et notre utilisation de « GitLab » est sous licence",{"text":472,"config":473},"Afficher le code source de la page",{"href":474,"dataGaName":475,"dataGaLocation":476},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/","page source","footer",{"text":478,"config":479},"Modifier cette page",{"href":480,"dataGaName":481,"dataGaLocation":476},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/content/","web ide",{"text":483,"config":484},"Veuillez contribuer",{"href":485,"dataGaName":486,"dataGaLocation":476},"https://gitlab.com/gitlab-com/marketing/digital-experience/about-gitlab-com/-/blob/main/CONTRIBUTING.md/","please contribute",{"twitter":488,"facebook":489,"youtube":490,"linkedin":491},"https://twitter.com/gitlab","https://www.facebook.com/gitlab","https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg","https://www.linkedin.com/company/gitlab-com",[493,516,570,603,637],{"title":61,"links":494,"subMenu":499},[495],{"text":496,"config":497},"Plateforme DevSecOps",{"href":70,"dataGaName":498,"dataGaLocation":476},"devsecops platform",[500],{"title":204,"links":501},[502,506,511],{"text":503,"config":504},"Voir les forfaits",{"href":206,"dataGaName":505,"dataGaLocation":476},"view plans",{"text":507,"config":508},"Pourquoi choisir GitLab Premium ?",{"href":509,"dataGaName":510,"dataGaLocation":476},"/fr-fr/pricing/premium/","why premium",{"text":512,"config":513},"Pourquoi choisir GitLab Ultimate ?",{"href":514,"dataGaName":515,"dataGaLocation":476},"/fr-fr/pricing/ultimate/","why ultimate",{"title":517,"links":518},"Solutions",[519,524,527,529,534,539,543,546,549,554,556,558,560,565],{"text":520,"config":521},"Transformation digitale",{"href":522,"dataGaName":523,"dataGaLocation":476},"/fr-fr/topics/digital-transformation/","digital transformation",{"text":150,"config":525},{"href":145,"dataGaName":526,"dataGaLocation":476},"security & compliance",{"text":137,"config":528},{"href":120,"dataGaName":121,"dataGaLocation":476},{"text":530,"config":531},"Développement agile",{"href":532,"dataGaName":533,"dataGaLocation":476},"/fr-fr/solutions/agile-delivery/","agile delivery",{"text":535,"config":536},"Transformation cloud",{"href":537,"dataGaName":538,"dataGaLocation":476},"/fr-fr/topics/cloud-native/","cloud transformation",{"text":540,"config":541},"SCM",{"href":134,"dataGaName":542,"dataGaLocation":476},"source code management",{"text":124,"config":544},{"href":126,"dataGaName":545,"dataGaLocation":476},"continuous integration & delivery",{"text":176,"config":547},{"href":178,"dataGaName":548,"dataGaLocation":476},"value stream management",{"text":550,"config":551},"GitOps",{"href":552,"dataGaName":553,"dataGaLocation":476},"/fr-fr/solutions/gitops/","gitops",{"text":189,"config":555},{"href":191,"dataGaName":192,"dataGaLocation":476},{"text":194,"config":557},{"href":196,"dataGaName":197,"dataGaLocation":476},{"text":199,"config":559},{"href":201,"dataGaName":202,"dataGaLocation":476},{"text":561,"config":562},"Formation",{"href":563,"dataGaName":564,"dataGaLocation":476},"/fr-fr/solutions/education/","education",{"text":566,"config":567},"Services financiers",{"href":568,"dataGaName":569,"dataGaLocation":476},"/fr-fr/solutions/finance/","financial services",{"title":209,"links":571},[572,574,576,578,581,583,587,589,591,593,595,597,599,601],{"text":221,"config":573},{"href":223,"dataGaName":224,"dataGaLocation":476},{"text":226,"config":575},{"href":228,"dataGaName":229,"dataGaLocation":476},{"text":231,"config":577},{"href":233,"dataGaName":234,"dataGaLocation":476},{"text":236,"config":579},{"href":238,"dataGaName":580,"dataGaLocation":476},"docs",{"text":259,"config":582},{"href":261,"dataGaName":5},{"text":584,"config":585},"Histoires de réussite client",{"href":586,"dataGaLocation":476},"/customers/",{"text":254,"config":588},{"href":256,"dataGaName":257,"dataGaLocation":476},{"text":263,"config":590},{"href":265,"dataGaName":266,"dataGaLocation":476},{"text":276,"config":592},{"href":278,"dataGaName":279,"dataGaLocation":476},{"text":268,"config":594},{"href":270,"dataGaName":271,"dataGaLocation":476},{"text":281,"config":596},{"href":283,"dataGaName":284,"dataGaLocation":476},{"text":286,"config":598},{"href":288,"dataGaName":289,"dataGaLocation":476},{"text":291,"config":600},{"href":293,"dataGaName":294,"dataGaLocation":476},{"text":296,"config":602},{"href":298,"dataGaName":299,"dataGaLocation":476},{"title":314,"links":604},[605,607,609,611,613,615,617,621,626,628,630,632],{"text":321,"config":606},{"href":323,"dataGaName":316,"dataGaLocation":476},{"text":326,"config":608},{"href":328,"dataGaName":329,"dataGaLocation":476},{"text":334,"config":610},{"href":336,"dataGaName":337,"dataGaLocation":476},{"text":339,"config":612},{"href":341,"dataGaName":342,"dataGaLocation":476},{"text":344,"config":614},{"href":346,"dataGaName":347,"dataGaLocation":476},{"text":349,"config":616},{"href":351,"dataGaName":352,"dataGaLocation":476},{"text":618,"config":619},"Sustainability",{"href":620,"dataGaName":618,"dataGaLocation":476},"/sustainability/",{"text":622,"config":623},"Diversité, inclusion et appartenance (DIB)",{"href":624,"dataGaName":625,"dataGaLocation":476},"/fr-fr/diversity-inclusion-belonging/","Diversity, inclusion and belonging",{"text":354,"config":627},{"href":356,"dataGaName":357,"dataGaLocation":476},{"text":364,"config":629},{"href":366,"dataGaName":367,"dataGaLocation":476},{"text":369,"config":631},{"href":371,"dataGaName":372,"dataGaLocation":476},{"text":633,"config":634},"Déclaration de transparence sur l'esclavage moderne",{"href":635,"dataGaName":636,"dataGaLocation":476},"https://handbook.gitlab.com/handbook/legal/modern-slavery-act-transparency-statement/","modern slavery transparency statement",{"title":374,"links":638},[639,642,644,646,651,656,661],{"text":640,"config":641},"Échanger avec un expert",{"href":52,"dataGaName":53,"dataGaLocation":476},{"text":383,"config":643},{"href":385,"dataGaName":386,"dataGaLocation":476},{"text":388,"config":645},{"href":390,"dataGaName":391,"dataGaLocation":476},{"text":647,"config":648},"Statut",{"href":649,"dataGaName":650,"dataGaLocation":476},"https://status.gitlab.com/","status",{"text":652,"config":653},"Conditions d'utilisation",{"href":654,"dataGaName":655},"/terms/","terms of use",{"text":657,"config":658},"Déclaration de confidentialité",{"href":659,"dataGaName":660,"dataGaLocation":476},"/fr-fr/privacy/","privacy statement",{"text":662,"config":663},"Préférences en matière de cookies",{"dataGaName":664,"dataGaLocation":476,"id":665,"isOneTrustButton":106},"cookie preferences","ot-sdk-btn",{"items":667},[668,670,673],{"text":652,"config":669},{"href":654,"dataGaName":655,"dataGaLocation":476},{"text":671,"config":672},"Politique de confidentialité",{"href":659,"dataGaName":660,"dataGaLocation":476},{"text":662,"config":674},{"dataGaName":664,"dataGaLocation":476,"id":665,"isOneTrustButton":106},"content:shared:fr-fr:main-footer.yml","Main Footer","shared/fr-fr/main-footer.yml","shared/fr-fr/main-footer",[680],{"_path":681,"_dir":682,"_draft":6,"_partial":6,"_locale":7,"content":683,"config":687,"_id":689,"_type":29,"title":690,"_source":31,"_file":691,"_stem":692,"_extension":34},"/en-us/blog/authors/gitlab-team","authors",{"name":18,"config":684},{"headshot":685,"ctfId":686},"https://res.cloudinary.com/about-gitlab-com/image/upload/v1749659488/Blog/Author%20Headshots/gitlab-logo-extra-whitespace.png","GitLab-Team",{"template":688},"BlogAuthor","content:en-us:blog:authors:gitlab-team.yml","Gitlab Team","en-us/blog/authors/gitlab-team.yml","en-us/blog/authors/gitlab-team",{"_path":694,"_dir":37,"_draft":6,"_partial":6,"_locale":7,"header":695,"eyebrow":696,"blurb":697,"button":698,"secondaryButton":702,"_id":704,"_type":29,"title":705,"_source":31,"_file":706,"_stem":707,"_extension":34},"/shared/fr-fr/next-steps","Commencez à livrer des logiciels de meilleurs qualité plus rapidement","Plus de 50 % des entreprises du classement Fortune 100 font confiance à GitLab","Découvrez comment la plateforme DevSecOps intelligente\n\n\npeut aider votre équipe.\n",{"text":45,"config":699},{"href":700,"dataGaName":48,"dataGaLocation":701},"https://gitlab.com/-/trial_registrations/new?glm_content=default-saas-trial&glm_source=about.gitlab.com/","feature",{"text":50,"config":703},{"href":52,"dataGaName":53,"dataGaLocation":701},"content:shared:fr-fr:next-steps.yml","Next Steps","shared/fr-fr/next-steps.yml","shared/fr-fr/next-steps",1753475403770]