CI/CD i Java med Jenkins och Azure Web Apps

App Service
Container Instances
Database for MySQL
Web Apps
GitHub

Lösningsidé

Om du vill att vi utökar den här artikeln med mer information, till exempel potentiella användningsfall, alternativa tjänster, implementeringsöverväganden eller prisvägledning, kan du berätta för oss GitHub Feedback!

Azure App Service är ett snabbt och enkelt sätt att skapa webbappar med Java, Node, PHP eller ASP.NET, samt stöd för anpassade språkkörningar med Docker. En pipeline för kontinuerlig integrering och kontinuerlig distribution (CI/CD) som push-distribuerar var och en av dina ändringar automatiskt till Azure App Services gör att du kan leverera värde snabbare till dina kunder.

Arkitektur

Arkitekturdiagram Laddaned en SVG för den här arkitekturen.

Dataflöde

  1. Ändra programmets källkod
  2. Genomför kod för GitHub
  3. Utlösare för kontinuerlig integrering till Jenkins
  4. Jenkins utlöser ett byggjobb med hjälp Azure Container Instances för en dynamisk bygga agent
  5. Jenkins skapar och lagrar artefakter i Azure Storage
  6. Jenkins distribuerar Java-program till Azure Web Apps backas upp av Azure Database for MySQL
  7. Azure App Insights tillhandahåller mått om programprestanda
  8. Övervaka program och göra förbättringar

Komponenter

  • Azure Web Apps:Skapa och distribuera snabbt verksamhetskritiska webbappar i stor skala
  • Container Instances:Kör enkelt containrar på Azure utan att hantera servrar
  • Azure Database for MySQL:Hanterad MySQL-databastjänst för apputvecklare
  • Program Insights: Identifiera, behandla och diagnostisera problem i dina webbappar och tjänster
  • Azure DevOps:Skapa och distribuera appar för flera plattformar för att få ut mesta av Azure-tjänster

Distribuera det här scenariot

Nästa steg