CI/CD v Javě s využitím Jenkinse a Azure Web Apps

App Service
Container Instances
Database for MySQL
Web Apps
GitHub

Nápad řešení Solution Idea

Pokud se chcete podívat, jak nás rozšířit tento článek o další informace, podrobnosti implementace, doprovodné materiály nebo příklady kódu, dejte nám vědět s názory na GitHubu.If you'd like to see us expand this article with more information, implementation details, pricing guidance, or code examples, let us know with GitHub Feedback!

Azure App Service je rychlý a jednoduchý způsob, jak vytvářet webové aplikace pomocí jazyků Java, Node, PHP nebo ASP.NET a také podporovat vlastní jazykové moduly runtime pomocí Docker.Azure App Service is a fast and simple way to create web apps using Java, Node, PHP or ASP.NET, as well as support for custom language runtimes using Docker. Kanál průběžné integrace a nasazování (CI/CD), který každou vaši změnu automaticky nasdílí do Azure App Services, vám umožní rychleji doručovat vaše zákazníky.A continuous integration and continuous deployment (CI/CD) pipeline that pushes each of your changes automatically to Azure app services allows you to deliver value faster to your customers.

ArchitekturaArchitecture

Diagram architektury Stáhnout SVG této architektury.Architecture diagram Download an SVG of this architecture.

Data FlowData Flow

  1. Změnit zdrojový kód aplikaceChange application source code
  2. Potvrzení kódu do GitHubuCommit code to GitHub
  3. Aktivační událost nepřetržité integrace do JenkinseContinuous Integration Trigger to Jenkins
  4. Jenkinse aktivuje úlohu sestavení pomocí Azure Container Instances pro dynamického agenta sestavení.Jenkins triggers a build job using Azure Container Instances for a dynamic build agent
  5. Jenkinse vytváří a ukládá artefakt v Azure StorageJenkins builds and stores artifact in Azure Storage
  6. Jenkinse nasadí aplikaci Java do Azure Web Apps zálohovanou Azure Database for MySQLJenkins deploys Java application to Azure Web Apps backed by Azure Database for MySQL
  7. Azure App Insights poskytuje metriky pro výkon aplikací.Azure App Insights provides metrics on application performance
  8. Monitorování aplikace a provádění vylepšeníMonitor application and make improvements

KomponentyComponents

  • Azure Web Apps: rychlé vytváření a nasazování důležitých webových aplikací ve velkém měřítkuAzure Web Apps: Quickly create and deploy mission critical Web apps at scale
  • Container Instances: snadné spouštění kontejnerů v Azure bez správy serverůContainer Instances: Easily run containers on Azure without managing servers
  • Azure Database for MySQL: spravovaná databázová služba MySQL pro vývojáře aplikacíAzure Database for MySQL: Managed MySQL database service for app developers
  • Application Insights: zjišťování, třídění a Diagnostika problémů ve webových aplikacích a službáchApplication Insights: Detect, triage, and diagnose issues in your web apps and services
  • Azure DevOps: sestavování a nasazování aplikací pro více platforem, abyste získali maximum ze služeb AzureAzure DevOps: Build and deploy multi-platform apps to get the most from Azure services

Další krokyNext steps

Nasazení do AzureDeploy to Azure