﻿
{"id":26442,"date":"2023-09-06T21:46:28","date_gmt":"2023-09-06T21:46:28","guid":{"rendered":"https:\/\/www.gencayyildiz.com\/blog\/?p=26442"},"modified":"2023-09-06T21:48:18","modified_gmt":"2023-09-06T21:48:18","slug":"aws-codepipeline-kullanarak-asp-net-core-web-api-uygulamasini-aws-elastic-beanstalk-ile-deploy-etme","status":"publish","type":"post","link":"https:\/\/www.gencayyildiz.com\/blog\/aws-codepipeline-kullanarak-asp-net-core-web-api-uygulamasini-aws-elastic-beanstalk-ile-deploy-etme\/","title":{"rendered":"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk \u0130le Deploy Etme"},"content":{"rendered":"<div id=\"fb-root\"><\/div>\n<p>Merhaba,<\/p>\n<p>Bu i\u00e7eri\u011fimizde AWS CodePipeline arac\u0131n\u0131 kullanarak Asp.NET Core WEB API uygulamas\u0131n\u0131 AWS Elastic Beanstalk servisi \u00fczerinden deploy edecek ve b\u00f6ylece AWS CodePipeline&#8217;\u0131n, AWS CodeBuild&#8217;in ve AWS Elastic Beanstalk&#8217;\u0131n temellerini \u00f6\u011frenmi\u015f ve tecr\u00fcbe etmi\u015f olaca\u011f\u0131z. O halde vakit kaybetmeksizin buyurun ba\u015flayal\u0131m&#8230;<\/p>\n<h3>AWS Elastic Beanstalk Nedir?<\/h3>\n<p>AWS Elastic Beanstalk, uygulama geli\u015ftiricilerin ve ekiplerin web uygulamalar\u0131n\u0131 ve servislerini h\u0131zl\u0131 bir \u015fekilde deploy etmesine ve bir yandan da \u00f6l\u00e7eklendirmesine olanak tan\u0131yan bir AWS servisidir.<\/p>\n<p>Temel olarak, Elastic Beanstalk uygulaman\u0131z\u0131 \u00e7al\u0131\u015ft\u0131rman\u0131z i\u00e7in gerekli olan altyap\u0131 ve kaynaklar\u0131 otomatik olarak y\u00f6netmenizi ve b\u00f6ylece sunucu y\u00f6netimi gibi detaylara odaklanmaks\u0131z\u0131n uygulaman\u0131z\u0131 AWS&#8217;de h\u0131zla \u00e7al\u0131\u015ft\u0131rman\u0131z\u0131 sa\u011flamaktad\u0131r.<\/p>\n<p>Elastic Beanstalk servisinin avantajlar\u0131n\u0131 ele almam\u0131z gerekirse e\u011fer;<\/p>\n<ul>\n<li><strong><em>Kolay Deploy<\/em><\/strong><br \/>\nUygulaman\u0131z\u0131n kodunu kolayl\u0131kla Elastic Beanstalk ile entegre edebilir ve otomatik olarak compile edip, yap\u0131land\u0131r\u0131p, deploy edebilirsiniz.\n<\/li>\n<li><strong><em>Otomatik \u00d6l\u00e7eklendirme<\/em><\/strong><br \/>\nElastic Beanstalk, uygulaman\u0131z\u0131n y\u00fck\u00fcn\u00fc otomatik olarak izleyecek ve gerekti\u011fi taktirde otomatik bir \u00f6l\u00e7eklendirme davran\u0131\u015f\u0131 ger\u00e7ekle\u015ftirecektir. B\u00f6ylece, artan taleplere kar\u015f\u0131n etkin uyum sa\u011flanabilecek ve uygulaman\u0131z\u0131n performans\u0131n\u0131 koruyabileceksiniz.\n<\/li>\n<li><strong><em>Sunucu ve Altyap\u0131 Detaylar\u0131ndan Kurtulma<\/em><\/strong><br \/>\nElastic Beanstalk, altyap\u0131 ve sunucu y\u00f6netimiyle ilgili ayr\u0131nt\u0131lar\u0131 sizin yerinize hallecektir. B\u00f6ylece daha \u00e7ok uygulaman\u0131z\u0131n ihtiya\u00e7 ve i\u015flevselliklerinin geli\u015ftirilmesine odaklanabileceksiniz.\n<\/li>\n<li><strong><em>\u00c7e\u015fitli Platform Deste\u011fi<\/em><\/strong><br \/>\nElastic Beanstalk, birden \u00e7ok programlama dili ve platform i\u00e7in destek sa\u011flamaktad\u0131r. Bu sayede farkl\u0131 programlama dillerinde, teknolojilerinde yahut platformlarda geli\u015ftirilmi\u015f uygulamalar\u0131 h\u0131zla deploy edip, aya\u011fa kald\u0131rabilirsiniz.\n<\/li>\n<li><strong><em>\u00d6zelle\u015ftirme<\/em><\/strong><br \/>\n\u0130htiya\u00e7 do\u011frultusunda Elastic Beanstalk ortam\u0131n\u0131z\u0131 kendinize g\u00f6re \u00f6zelle\u015ftirebilirsiniz.\n<\/li>\n<\/ul>\n<p>\u015feklinde \u00f6zetleyebiliriz.<\/p>\n<p>Ayr\u0131ca \u015funu da bilmenizde fayda vard\u0131r ki; Elastic Beanstalk, uygulaman\u0131z\u0131 desteklemek i\u00e7in birden fazla AWS servisinden istifade edebilmekte ve bunu yaparken de sizin i\u00e7in bu servislerin y\u00f6netimini b\u00fcy\u00fck \u00f6l\u00e7\u00fcde otomatize edebilmektedir. Bu sayede h\u0131zl\u0131 bir \u015fekilde uygulaman\u0131z\u0131 geli\u015ftirebilecek, deploy edebilecek ve \u00f6l\u00e7eklendirebileceksiniz.<\/p>\n<h3>AWS CodePipeline Nedir?<\/h3>\n<p>AWS CodePipeline, s\u00fcrekli entegrasyon ve s\u00fcrekli da\u011f\u0131t\u0131m(CI\/CD) s\u00fcre\u00e7lerini otomatikle\u015ftirmek i\u00e7in kullan\u0131lan bir servistir. AWS CodePipeline, yaz\u0131l\u0131m\u0131n geli\u015ftirilme a\u015famalar\u0131n\u0131 otomatikle\u015ftirmek ve farkl\u0131 servisler ve bile\u015fenler aras\u0131nda sorunsuz bir \u015fekilde ta\u015f\u0131ma yapmak i\u00e7in tasarlanm\u0131\u015ft\u0131r. Bu servis sayesinde, kod de\u011fi\u015fiklikleri s\u00fcrekli olarak test edilebilmekte, otomatik olarak merge i\u015flemleri ger\u00e7ekle\u015ftirilmekte ve hedef sunuculara h\u0131zl\u0131ca deploy yap\u0131labilmektedir.<\/p>\n<p>AWS CodePipeline&#8217;\u0131n olu\u015ftu\u011fu a\u015famalar \u015funlardan ibarettir;<\/p>\n<ul>\n<li><strong><em>Kaynak A\u015famas\u0131 (Source Stage)<\/em><\/strong><br \/>\nBu a\u015famada; <em>AWS CodeCommit<\/em>, <em>GitHub<\/em>, <em>Amazon S3<\/em> vs. gibi \u00e7e\u015fitli kod depolama hizmetlerinden veya s\u00fcr\u00fcm kontrol sistemlerinden kod kaynaklar\u0131 edinilir.\n<\/li>\n<li><strong><em>Derleme ve Test A\u015famalar\u0131 (Build And Test Stages)<\/em><\/strong><br \/>\nEdinilen kaynak kodu derlenir, test edilir ve hatalar tespit edilir. Bu a\u015famada, kodun i\u015flevselli\u011fi ve kalitesi do\u011frulan\u0131r.\n<\/li>\n<li><strong><em>Da\u011f\u0131t\u0131m A\u015famalar\u0131 (Deployment Stages)<\/em><\/strong><br \/>\nDerlenmi\u015f ve test edilmi\u015f kod; development, test veya production gibi farkl\u0131 ortamlara otomatik olarak da\u011f\u0131t\u0131l\u0131r. AWS CodeDeploy, ECS(Elastic Container Service), AWS Lambda vs. gibi farkl\u0131 servislerle entegrasyon sa\u011flayarak deploy&#8217;lar ger\u00e7ele\u015ftirilir.\n<\/li>\n<li><strong><em>Onaylama \u0130\u015flemleri (Approval Actions)<\/em><\/strong><br \/>\nT\u00fcm bu s\u00fcre\u00e7te iste\u011fe ba\u011fl\u0131 olarak, belirli a\u015famalardan ge\u00e7en kod de\u011fi\u015fikliklerini onaylamak veya reddetmek \u00fczere insan onay\u0131n\u0131 i\u00e7eren i\u015flemler eklenebilir.\n<\/li>\n<\/ul>\n<h3>AWS CodeBuild Nedir?<\/h3>\n<p>AWS CodeBuild, yaz\u0131l\u0131m projelerinin otomatik olarak derlenmesi(build) ve test edilmesi i\u00e7in kullan\u0131lan, s\u00fcrekli entegrasyon ve s\u00fcrekli da\u011f\u0131t\u0131m(CI\/CD) s\u00fcre\u00e7lerini desteklemek i\u00e7in tasarlanm\u0131\u015f bir servistir. B\u00f6ylece CodeBuild sayesinde, yaz\u0131l\u0131m geli\u015ftirme s\u00fcrecinin bir par\u00e7as\u0131 olan kod derleme ve test a\u015famalar\u0131 otomatikle\u015ftirilebilmektedir.<\/p>\n<p>AWS CodeBuild&#8217;in temel \u00f6zelliklerine de\u011finmemiz gerekirse e\u011fer;<\/p>\n<ul>\n<li><strong><em>Otomatik ve \u00d6l\u00e7eklenebilir Build Hizmeti<\/em><\/strong><br \/>\nCodeBuild, projenizi otomatik olarak derlenmek ve test etmek i\u00e7in ihtiya\u00e7 duydu\u011funuz kaynaklar\u0131 sa\u011flamakta, projenizin boyutuna ve karma\u015f\u0131kl\u0131\u011f\u0131na ba\u011fl\u0131 olarak \u00f6l\u00e7eklenebilmekte ve y\u00f6netilebilmektedir.\n<\/li>\n<li><strong><em>Farkl\u0131 Platform Deste\u011fi<\/em><\/strong><br \/>\nCodeBuild; \u00e7e\u015fitli programlama dilleri ile platformlar i\u00e7in destek sa\u011flamakta ve b\u00f6ylece farkl\u0131 projelerin ve uygulamalar\u0131n kolayca entegre edilebilmesini sa\u011flamaktad\u0131r.\n<\/li>\n<li><strong><em>\u00d6zelle\u015ftirilebilir Build Ortam\u0131<\/em><\/strong><br \/>\nCodeBuild&#8217;de kendi derleme ortamlar\u0131n\u0131z\u0131 olu\u015fturabilir ve yap\u0131land\u0131rabilirsiniz.\n<\/li>\n<li><strong><em>Entegrasyon<\/em><\/strong><br \/>\nAWS CodePipeline, AWS CodeCommit, GitHub gibi servislerle entegre olarak kullan\u0131labilmekte ve b\u00f6ylece CI\/CD s\u00fcre\u00e7lerine kolayca dahil edilebilmektedir.\n<\/li>\n<li><strong><em>Test Otomasyonu<\/em><\/strong><br \/>\nKodunuzu test etmeniz i\u00e7in \u00f6zelle\u015ftirilmi\u015f test senaryolar\u0131 ve otomasyon ara\u00e7lar\u0131 kullanabilir ve b\u00f6ylece yaz\u0131l\u0131m kalitesini sa\u011flayabilirsiniz.\n<\/li>\n<li><strong><em>G\u00fcvenlik ve \u0130zleme<\/em><\/strong><br \/>\nCodeBuild, g\u00fcvenli bir \u015fekilde projelerinizi derlemekte ve test edebilmektedir. Ayr\u0131ca, build s\u00fcrecinin ilerlemesini ve sonu\u00e7lar\u0131n\u0131 izlemek i\u00e7in loglara da eri\u015fim sa\u011flayabilmektedir.\n<\/li>\n<\/ul>\n<h3>AWS \u0130le CI\/CD&#8217;yi Anlamak<\/h3>\n<p>S\u00fcrekli Entegrasyon(Continuous Integration) ve S\u00fcrekli Da\u011f\u0131t\u0131m(Continuous Deployment\/Delivery) k\u0131saltmalar\u0131 olarak kullan\u0131lan CI\/CD kavramlar\u0131, yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinde \u00f6nemli yakla\u015f\u0131mlar\u0131 ifade etmektedirler. AWS gibi cloud service provider&#8217;lar\u0131, bu s\u00fcre\u00e7leri desteklemek i\u00e7in bir dizi hizmet sunmaktad\u0131rlar.<\/p>\n<p>CI\/CD kavramlar\u0131na, AWS a\u00e7\u0131s\u0131ndan g\u00f6z att\u0131\u011f\u0131m\u0131zda a\u015fa\u011f\u0131daki baz\u0131 temel noktalar\u0131 g\u00f6zlemlemekteyiz;<\/p>\n<h5>S\u00fcrekli Entegrasyon(Continuous Integration\/CI)<\/h5>\n<p>S\u00fcrekli entegrasyon, geli\u015ftiricilerin farkl\u0131 ekipler veya bireyler olarak yapt\u0131\u011f\u0131 kod de\u011fi\u015fikliklerini d\u00fczenli olarak bir araya getirme s\u00fcrecini ifade eder. Amac\u0131, bu de\u011fi\u015fikliklerin kod taban\u0131na sorunsuz bir \u015fekilde entegre edilmesini sa\u011flamakt\u0131r.<\/p>\n<p>CI s\u00fcre\u00e7lerinde genellikle a\u015fa\u011f\u0131daki i\u015flemler ger\u00e7ekle\u015ftirilmektedir;<\/p>\n<ul>\n<li>Farkl\u0131 geli\u015ftiricilerin yapt\u0131\u011f\u0131 kod de\u011fi\u015fikleri d\u00fczenli olarak birle\u015ftirilir.<\/li>\n<li>Birle\u015ftirme sonras\u0131 otomatik testler \u00e7al\u0131\u015ft\u0131r\u0131l\u0131r ve hatalar tespit edilir.<\/li>\n<li>Hatalar\u0131n erken a\u015famada tespit edilmesi, yaz\u0131l\u0131m\u0131n kalitesini artt\u0131r\u0131r.<\/li>\n<\/ul>\n<h5>S\u00fcrekli Da\u011f\u0131t\u0131m(Continuous Deployment\/Delivery\/CD)<\/h5>\n<p>S\u00fcrekli da\u011f\u0131t\u0131m, CI s\u00fcrecinin bir ad\u0131m \u00f6tesidir. Bu a\u015famada, kod de\u011fi\u015fiklikleri ba\u015far\u0131l\u0131 bir \u015fekilde birle\u015ftirildikten ve otomatik test edildikten sonra, \u00fcretim ortam\u0131na otomatik da\u011f\u0131t\u0131m s\u00fcreci ba\u015flar. <\/p>\n<ul>\n<li><strong><em>Continuous Deployment<\/em><\/strong> : Otomatik testlerden ba\u015far\u0131yla ge\u00e7en kod de\u011fi\u015fiklikleri, hi\u00e7bir insan m\u00fcdahalesi olmaks\u0131z\u0131n otomatik olarak \u00fcretim ortam\u0131na deploy edilirler.<\/li>\n<li><strong><em>Continuous Delivery<\/em><\/strong> : Otomatik testlerden ba\u015far\u0131yla ge\u00e7en kod de\u011fi\u015fiklikleri, \u00fcretim ortam\u0131na da\u011f\u0131t\u0131lmadan \u00f6nce insan onay\u0131na ihtiya\u00e7 duyulan a\u015famada bekletilir.<\/li>\n<\/ul>\n<h5>AWS \u0130le CI\/CD<\/h5>\n<p>AWS, yaz\u0131l\u0131m geli\u015ftirme s\u00fcre\u00e7lerinizi desteklemek i\u00e7in a\u015fa\u011f\u0131daki hizmetleri sunmaktad\u0131r;<\/p>\n<ul>\n<li><strong><em>AWS CodeCommit<\/em><\/strong> : Kod depolama hizmeti.<\/li>\n<li><strong><em>AWS CodeBuild<\/em><\/strong> : Otomatik derleme ve test hizmeti.<\/li>\n<li><strong><em>AWS CodePipeline<\/em><\/strong> : S\u00fcrekli entegrasyon ve da\u011f\u0131t\u0131m hizmeti.<\/li>\n<li><strong><em>AWS CodeDeploy<\/em><\/strong> : Uygulamalar\u0131 farkl\u0131 hedef ortamlara da\u011f\u0131tma hizmeti.<\/li>\n<li><strong><em>AWS Elastic Beanstalk<\/em><\/strong> : Kolayca \u00f6l\u00e7eklenebilen uygulama platformu.<\/li>\n<\/ul>\n<p>T\u00fcm bu hizmetler; kodu otomatik olarak derlemek, test etmek, birle\u015ftirmek ve da\u011f\u0131tmak i\u00e7in kullan\u0131lmaktad\u0131rlar.<\/p>\n<h3>\u0130\u00e7erikte Seyredece\u011fimiz Noktalara H\u0131zl\u0131ca De\u011finirsek&#8230;!<\/h3>\n<p>Mevzu bahis i\u00e7eri\u011fimizde ele alaca\u011f\u0131m\u0131z AWS servislerini ve uygulayaca\u011f\u0131m\u0131z terminolojik davran\u0131\u015flar\u0131 \u00f6zet mahiyetinde masaya yat\u0131rd\u0131\u011f\u0131m\u0131za g\u00f6re, yaz\u0131 s\u00fcrecinde seyredece\u011fimiz ad\u0131mlar\u0131 da h\u0131zl\u0131ca de\u011ferlendirmekte fayda g\u00f6rmekteyim.<\/p>\n<ol>\n<li>\u0130\u00e7eri\u011fimizde \u00f6rnek ama\u00e7l\u0131 geli\u015ftirece\u011fimiz bir Asp.NET Core Web API uygulamas\u0131n\u0131 CI\/CD davran\u0131\u015flar\u0131 e\u015fli\u011finde AWS CodePipeline&#8217;\u0131 kullanarak AWS Elastic Beanstalk arac\u0131l\u0131\u011f\u0131yla nas\u0131l deploy edece\u011fimizi inceliyor olaca\u011f\u0131z.<\/li>\n<li>S\u00fcre\u00e7te uygulamay\u0131 GitHub Repository&#8217;sine atacak ve sonras\u0131nda da AWS \u00fczerinden Elastic Beanstalk&#8217;\u0131 yap\u0131land\u0131racak ve bu yap\u0131land\u0131rmada GitHub Repository&#8217;sine eri\u015fim izni veriyor olaca\u011f\u0131z.<\/li>\n<li>Uygulamay\u0131 derlemek i\u00e7in ise AWS CodeBuild&#8217;den istifade edece\u011fiz.<\/li>\n<li>E\u011fer her \u015fey yolunda giderse, nihai olarak uygulamaya herkesin eri\u015febilece\u011fi bir endpoint e\u015fli\u011finde cloud&#8217;a deploy etmi\u015f olaca\u011f\u0131z.<\/li>\n<\/ol>\n<h3>AWS CodePipeline kullanarak Asp.NET Core Web API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#8217;a Deploy Etme<\/h3>\n<ul>\n<li><strong>Ad\u0131m 1<\/strong> <em style=\"color:green;font-size:12px;\">(Asp.NET Core Uygulamas\u0131n\u0131n Olu\u015fturulmas\u0131 | buildspec.yml ve Procfile Dosyalar\u0131n\u0131n Tan\u0131mlanmas\u0131)<\/em><br \/>\nT\u00fcm \u00e7al\u0131\u015fmada \u00f6rnek ama\u00e7l\u0131 kullanaca\u011f\u0131m\u0131z bir Asp.NET Core Web API uygulamas\u0131 yan\u0131nda, uygulaman\u0131n solution dizininde a\u015fa\u011f\u0131daki i\u00e7eriklerde olacak \u015fekilde &#8216;buildspec.yml&#8217; ve &#8216;Procfil&#8217; isimli AWS CodeBuild yap\u0131land\u0131rma dosyalar\u0131n\u0131 olu\u015ftural\u0131m.<\/p>\n<p><em>builderspec.yml<\/em>;<\/p>\n<div style=\"font-size:12px;\">\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nversion: 0.2\r\n\r\nphases:\r\n  install:\r\n    runtime-versions:\r\n      dotnet: 7.0\r\n  pre_build:\r\n    commands:\r\n      - dotnet restore AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example.csproj\r\n  build:\r\n    commands:\r\n      - dotnet build AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example.csproj\r\n  post_build:\r\n    commands:\r\n      - dotnet publish -c Release -o .\/app\/ AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example.csproj\r\n      \r\nartifacts:\r\n  files: '**\/*'\r\n<\/pre>\n<\/div>\n<p>Bu yap\u0131land\u0131rma dosyas\u0131nda, AWS Elastic Beanstalk ile deploy edilecek DLL&#8217;lerin bilgisi ve publish i\u00e7in AWS CodeBuild projesi taraf\u0131ndan baz al\u0131nacak derleme ve yay\u0131nlama talimatlar\u0131 mevcuttur.<\/p>\n<p><em>Procfile<\/em>;<\/p>\n<div style=\"font-size:12px;\">\n<pre class=\"brush: plain; title: ; notranslate\" title=\"\">\r\nweb: dotnet .\/app\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example.dll\r\n<\/pre>\n<\/div>\n<p>Procfile dosyas\u0131nda ise uygulaman\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131r\u0131laca\u011f\u0131 ve y\u00f6netilece\u011fi tan\u0131mlanmaktad\u0131r. Bu dosyan\u0131n ad\u0131 da zaten i\u015flevine uygun bir \u015fekilde (Process File) k\u00f6k\u00fcnden gelmektedir. Uygulaman\u0131n derlenmesi neticesinde bir\u00e7ok .dll dosyas\u0131 \u00fcretilecektir. Bizler Procfile dosyas\u0131 sayesinde uygulaman\u0131n hangi .dll \u00fczerinden \u00e7al\u0131\u015faca\u011f\u0131n\u0131 yukar\u0131daki gibi belirtmekte ve b\u00f6ylece uygulamay\u0131 cloud&#8217;a deploy etti\u011fimizde aya\u011fa kald\u0131r\u0131c\u0131 noktay\u0131 anlamas\u0131nda yard\u0131mc\u0131 olabilmekteyiz.<\/p>\n<p>Ayr\u0131ca olu\u015fturdu\u011fumuz Web API uygulamas\u0131nda default gelen controller&#8217;\u0131 silelim ve test ama\u00e7l\u0131 a\u015fa\u011f\u0131daki minimal api&#8217;yi ekleyelim.<\/p>\n<div style=\"font-size:12px;\">\n<pre class=\"brush: jscript; title: ; notranslate\" title=\"\">\r\n.\r\n.\r\n.\r\napp.MapGet(&quot;\/&quot;, () =&gt;\r\n{\r\n    Console.WriteLine(&quot;Hi&quot;);\r\n    return &quot;Hi&quot;;\r\n});\r\n.\r\n.\r\n.\r\n<\/pre>\n<\/div>\n<\/li>\n<li><strong>Ad\u0131m 2<\/strong> <em style=\"color:green;font-size:12px;\">(AWS Elastic Beanstalk Ortam\u0131n\u0131n Ayarlanmas\u0131)<\/em><br \/>\nAWS Elastic Beanstalk ortam\u0131n\u0131n ayarlanabilmesi i\u00e7in <strong>EC2 instance profile<\/strong>&#8216;\u0131na ihtiyac\u0131m\u0131z olackat\u0131r. Dolay\u0131s\u0131yla ilk olarak bu profili olu\u015fturmaya odaklanal\u0131m. Bunun i\u00e7in IAM servisi \u00fczerinden rollere gelelim ve yeni bir rol olu\u015ftural\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"647\" height=\"614\" class=\"aligncenter size-full wp-image-26464\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.png 647w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-300x285.png 300w\" sizes=\"auto, (max-width: 647px) 100vw, 647px\" \/><\/a>Burada olu\u015fturulacak role <code><em>AWSElasticBeanstalkWebTier<\/em><\/code>, <code><em>AWSElasticBeanstalkWorkerTier<\/em><\/code> ve <code><em>AWSElasticBeanstalkMulticontainerDocker<\/em><\/code> politikalar\u0131n\u0131 ekleyelim.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"298\" height=\"165\" class=\"aligncenter size-full wp-image-26465\" \/><\/a>Ve son olarakta bu rol\u00fcn ad\u0131n\u0131 &#8216;AWSElasticBeanstalk-Role&#8217; olarak ayarlay\u0131p, olu\u015ftural\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"303\" height=\"343\" class=\"aligncenter size-full wp-image-26467\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5.png 303w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5-265x300.png 265w\" sizes=\"auto, (max-width: 303px) 100vw, 303px\" \/><\/a>\u015eimdi bu a\u015famadan sonra <em>&#8216;Elastic Beanstalk&#8217;<\/em> servisine gelip, gerekli ortam konfig\u00fcrasyonlar\u0131nda bulunabiliriz.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"651\" height=\"253\" class=\"aligncenter size-full wp-image-26468\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png 651w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6-300x117.png 300w\" sizes=\"auto, (max-width: 651px) 100vw, 651px\" \/><\/a>\u0130lgili servise girdikten sonra sol men\u00fcde &#8216;Environments&#8217; sekmesindeyken sa\u011fdaki &#8216;Create environments&#8217; butonuna t\u0131klayal\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"1838\" height=\"193\" class=\"aligncenter size-full wp-image-26469\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png 1838w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7-300x32.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7-1024x108.png 1024w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7-768x81.png 768w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7-1536x161.png 1536w\" sizes=\"auto, (max-width: 1838px) 100vw, 1838px\" \/><\/a>Ard\u0131ndan a\u00e7\u0131lan sayfada a\u015fa\u011f\u0131daki gibi temel konfig\u00fcrasyonlar\u0131 ger\u00e7ekle\u015ftirelim.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"613\" height=\"638\" class=\"aligncenter size-full wp-image-26471\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8.png 613w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8-288x300.png 288w\" sizes=\"auto, (max-width: 613px) 100vw, 613px\" \/><\/a><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"523\" height=\"381\" class=\"aligncenter size-full wp-image-26472\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png 523w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9-300x219.png 300w\" sizes=\"auto, (max-width: 523px) 100vw, 523px\" \/><\/a>\u0130kinci ad\u0131mdaki &#8216;Configure service access&#8217; k\u0131sm\u0131 bu noktada \u00f6nem arz etmektedir. Burada a\u015fa\u011f\u0131daki gibi biraz \u00f6nce olu\u015fturdu\u011fumuz &#8216;EC2 instance profile&#8217;i e\u015fli\u011finde gerekli yap\u0131land\u0131rmalarda bulunal\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"981\" height=\"650\" class=\"aligncenter size-full wp-image-26473\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png 981w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10-300x199.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10-768x509.png 768w\" sizes=\"auto, (max-width: 981px) 100vw, 981px\" \/><\/a>Ve t\u00fcm bu ayarlar do\u011frultusunda AWS Elastic Beanstalk ortam\u0131n\u0131 olu\u015ftural\u0131m. Tabi burada EC2 cloud server&#8217;\u0131n, load balancer&#8217;\u0131n, \u00f6l\u00e7ekleyicilerin ve di\u011fer gerekli olan temel kaynaklar\u0131n olu\u015fturulmas\u0131 3-5 dakikay\u0131 bulacakt\u0131r.<\/p>\n<p>Nihai olarak t\u00fcm konfig\u00fcrasyonel haz\u0131rl\u0131klar ba\u015far\u0131yla tamamland\u0131ktan sonra Web API uygulamam\u0131z\u0131n deploy edilece\u011fi URL taraf\u0131m\u0131za verilecektir.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"808\" height=\"325\" class=\"aligncenter size-full wp-image-26474\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png 808w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11-300x121.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11-768x309.png 768w\" sizes=\"auto, (max-width: 808px) 100vw, 808px\" \/><\/a>URL&#8217;e g\u00f6z att\u0131\u011f\u0131m\u0131zda a\u015fa\u011f\u0131daki gibi bir neticeyle kar\u015f\u0131la\u015fmaktay\u0131z.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"913\" height=\"281\" class=\"aligncenter size-full wp-image-26475\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png 913w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12-300x92.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12-768x236.png 768w\" sizes=\"auto, (max-width: 913px) 100vw, 913px\" \/><\/a>Ayr\u0131ca AWS Elastic Beanstalk&#8217;\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131na dair fikir edinebilmek i\u00e7in servisin a\u015fa\u011f\u0131s\u0131ndaki loglara g\u00f6z atman\u0131z\u0131 tavsiye ederim. Burada olu\u015fturulan t\u00fcm kaynaklar\u0131 a\u00e7\u0131k\u00e7a g\u00f6zlemleyebilir, \u00e7apraz kontrol sa\u011flayabilirsiniz.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"1164\" height=\"628\" class=\"aligncenter size-full wp-image-26476\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13.png 1164w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13-300x162.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13-1024x552.png 1024w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-13-768x414.png 768w\" sizes=\"auto, (max-width: 1164px) 100vw, 1164px\" \/><\/a>\n<\/li>\n<li><strong>Ad\u0131m 3<\/strong> <em style=\"color:green;font-size:12px;\">(AWS CodePipeline Servisinin Olu\u015fturulmas\u0131 ve Uygulaman\u0131n GitHub&#8217;dan \u00c7ekilmesi)<\/em><br \/>\nArt\u0131k Elastic Beanstalk servisimiz \u00e7al\u0131\u015f\u0131r durumda oldu\u011funa g\u00f6re uygulaman\u0131n publish&#8217;ini Beanstalk ortam\u0131na deploy edecek olan AWS CodePipeline servisini de olu\u015fturabiliriz. Bunun i\u00e7in \u00f6ncelikle uygulamam\u0131z\u0131 GitHub&#8217;a atal\u0131m, ard\u0131ndan AWS CodePipeline servisine gelerek, a\u015fa\u011f\u0131daki gibi bir pipeline olu\u015ftural\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-14.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-14.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"633\" height=\"236\" class=\"aligncenter size-full wp-image-26477\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-14.png 633w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-14-300x112.png 300w\" sizes=\"auto, (max-width: 633px) 100vw, 633px\" \/><\/a><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-15.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-15.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"946\" height=\"556\" class=\"aligncenter size-full wp-image-26478\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-15.png 946w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-15-300x176.png 300w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/08\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-15-768x451.png 768w\" sizes=\"auto, (max-width: 946px) 100vw, 946px\" \/><\/a>Tabi burada GitHub \u00fczerinden repository&#8217;lerin eri\u015fimi i\u00e7in Amazon&#8217;a gerekli yetkilerin verilmesi gerekti\u011fini s\u00f6ylemekte fayda var.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"939\" height=\"527\" class=\"aligncenter size-full wp-image-26481\" \/><\/a><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-1.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-1.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"840\" height=\"555\" class=\"aligncenter size-full wp-image-26485\" \/><\/a>3. ad\u0131mda bir proje ad\u0131 olu\u015fturabilmek i\u00e7in &#8216;Create project&#8217; butonu e\u015fli\u011finde a\u015fa\u011f\u0131daki gibi gerekli tan\u0131mlamada bulunal\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-2.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-2.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"377\" height=\"265\" class=\"aligncenter size-full wp-image-26487\" \/><\/a>Ayn\u0131 \u015fekilde environment i\u00e7in de a\u015fa\u011f\u0131daki yap\u0131land\u0131rmalar\u0131 ger\u00e7ekle\u015ftirelim.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-3.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-3.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"547\" height=\"468\" class=\"aligncenter size-full wp-image-26490\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-3.png 547w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-3-300x257.png 300w\" sizes=\"auto, (max-width: 547px) 100vw, 547px\" \/><\/a>Ve son olarak da yukar\u0131daki ad\u0131mlarda olu\u015fturdu\u011fumuz buildspec dosyas\u0131n\u0131 da a\u015fa\u011f\u0131daki gibi bildirelim.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"548\" height=\"415\" class=\"aligncenter size-full wp-image-26491\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4.png 548w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-4-300x227.png 300w\" sizes=\"auto, (max-width: 548px) 100vw, 548px\" \/><\/a><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-5.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"827\" height=\"563\" class=\"aligncenter size-full wp-image-26492\" \/><\/a>4. ad\u0131mda ise a\u015fa\u011f\u0131daki gibi da\u011f\u0131t\u0131m konfig\u00fcrasyonunu ger\u00e7ekle\u015ftirelim.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"672\" height=\"430\" class=\"aligncenter size-full wp-image-26493\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6.png 672w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-6-300x192.png 300w\" sizes=\"auto, (max-width: 672px) 100vw, 672px\" \/><\/a>Burada dikkat ederseniz, &#8216;Deploy provider&#8217; olarak &#8216;AWS Elastic Beanstalk&#8217;\u0131 ge\u00e7iyoruz ve &#8216;Application name&#8217; olarak da 2. ad\u0131mda olu\u015fturdu\u011fumuz uygulamay\u0131 belirtiyoruz.<\/p>\n<p>Ve nihai olarak yapm\u0131\u015f oldu\u011fumuz bu konfig\u00fcrasyonlar neticesinde CodePipeline servisini a\u015fa\u011f\u0131daki verilen review e\u015fli\u011finde olu\u015fturuyoruz.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"411\" height=\"741\" class=\"aligncenter size-full wp-image-26494\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7.png 411w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-7-166x300.png 166w\" sizes=\"auto, (max-width: 411px) 100vw, 411px\" \/><\/a>\n<\/li>\n<li><strong>Ara Ad\u0131m<\/strong> <em style=\"color:green;font-size:12px;\">(AWS CodePipeline Servisini Ke\u015ffedelim)<\/em><br \/>\n\u015eimdi olu\u015fturdu\u011fumuz pipeline&#8217;a g\u00f6z atarsak e\u011fer a\u015fa\u011f\u0131daki g\u00f6rselde oldu\u011fu gibi &#8216;Source&#8217;, &#8216;Build&#8217; ve &#8216;Deploy&#8217; a\u015famalar\u0131ndan ibaret oldu\u011funu g\u00f6rece\u011fiz.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-8.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"651\" height=\"882\" class=\"aligncenter size-full wp-image-26498\" \/><\/a><\/p>\n<ol>\n<li><em>Source<\/em><br \/>\nGitHub&#8217;dan kodun \u00e7ekildi\u011fi a\u015famad\u0131r.<\/li>\n<li><em>Build<\/em><br \/>\nbuildspec.yml dosyas\u0131ndaki talimatlar\u0131 kullanarak uygulaman\u0131n derlendi\u011fi ve publish edildi\u011fi a\u015famad\u0131r.<\/li>\n<li><em>Deploy<\/em><br \/>\nPublish edilen uygulaman\u0131n AWS Elastic Beanstalk&#8217;a deploy edildi\u011fi a\u015famad\u0131r.<\/li>\n<\/ol>\n<p>Bu a\u015famalardan herhangi birinde olas\u0131 bir ba\u015far\u0131s\u0131zl\u0131k, bir sonraki a\u015faman\u0131n y\u00fcr\u00fct\u00fclmesini engelleyecektir. Bizim yapt\u0131\u011f\u0131m\u0131z \u00e7al\u0131\u015fmada ise pipeline&#8217;\u0131m\u0131z\u0131n ma\u015fallah\u0131 oldu\u011funu s\u00f6yleyebiliriz ki t\u00fcm a\u015famalar\u0131n ba\u015far\u0131l\u0131 bir \u015fekilde ge\u00e7ildi\u011fi a\u015fikard\u0131r.<\/p>\n<p>Velhas\u0131l pipeline&#8217;\u0131n sonuncu a\u015famas\u0131 olan &#8216;Deploy&#8217; a\u015famas\u0131nda, uygulaman\u0131n hangi AWS Elastic Beanstalk&#8217;a deploy edildi\u011finin adresi bizlere \u00e7\u0131kt\u0131 olarak a\u015fa\u011f\u0131daki g\u00f6rseldeki gibi verilmektedir.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"328\" height=\"209\" class=\"aligncenter size-full wp-image-26503\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9.png 328w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-9-300x191.png 300w\" sizes=\"auto, (max-width: 328px) 100vw, 328px\" \/><\/a>\u0130lgili adrese t\u0131klayarak, olu\u015fturdu\u011fumuz Elastic Beanstalk uygulamas\u0131na gelelim ve ard\u0131ndan a\u015fa\u011f\u0131daki gibi vermi\u015f oldu\u011fu domain url&#8217;sine t\u0131klayarak deploy edilen uygulamay\u0131 taray\u0131c\u0131da a\u00e7al\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"360\" height=\"69\" class=\"aligncenter size-full wp-image-26504\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10.png 360w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-10-300x58.png 300w\" sizes=\"auto, (max-width: 360px) 100vw, 360px\" \/><\/a><a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"481\" height=\"67\" class=\"aligncenter size-full wp-image-26505\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11.png 481w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-11-300x42.png 300w\" sizes=\"auto, (max-width: 481px) 100vw, 481px\" \/><\/a>G\u00f6r\u00fcld\u00fc\u011f\u00fc \u00fczere uygulamam\u0131z gayet sa\u011fl\u0131kl\u0131 bir \u015fekilde deploy edilmi\u015f vaziyette, \u00e7al\u0131\u015fmaktad\u0131r&#8230;\n<\/li>\n<li><strong>Ad\u0131m 4<\/strong> <em style=\"color:green;font-size:12px;\">(AWS Elastic Beanstalk&#8217;ta Environment Konfig\u00fcrasyonunu Sa\u011flama)<\/em><br \/>\nYapm\u0131\u015f oldu\u011fumuz bu \u00e7al\u0131\u015fmada, development ortam\u0131nda i\u015flevselli\u011fini kazanacak olan swagger aray\u00fcz\u00fcn\u00fc de etkinle\u015ftirmek istiyorsak e\u011fer bunun i\u00e7in AWS Elastic Beanstalk&#8217;ta <code>ASPNETCORE_ENVIRONMENT<\/code> environment de\u011ferini &#8216;Development&#8217; olarak ayarlamam\u0131z gerekmektedir. Bu i\u015flem i\u00e7in ise a\u015fa\u011f\u0131daki g\u00f6rselde oldu\u011fu gibi Elastic Beanstalk servisinde, sol men\u00fc \u00fczerinden &#8216;Configuration&#8217; sekmesine, oradan da a\u00e7\u0131lan ekranda &#8216;Updates, monitoring, and logging&#8217; b\u00f6l\u00fcm\u00fcne gelerek &#8216;Edit&#8217; butonuna t\u0131klayal\u0131m. Sonras\u0131nda ise en a\u015fa\u011f\u0131daki &#8216;Environment properties&#8217; k\u0131sm\u0131ndan da, bahsedilen environment variable&#8217;\u0131 girelim ve &#8216;Apply&#8217; butonuna t\u0131klayarak s\u00fcreci tamamlayal\u0131m.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.gif\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme.gif\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"800\" height=\"628\" class=\"aligncenter size-full wp-image-26506\" \/><\/a>Bu i\u015flemden sonra yakla\u015f\u0131k 30 saniye zarf\u0131nda uygulamaya dair environment variable&#8217;lar g\u00fcncellenecektir. Ee haliyle url&#8217;in sonuna \/swagger ekleyerek tekrar istekte bulundu\u011fumuzda swagger aray\u00fcz\u00fcn\u00fcn de etkinle\u015ftirildi\u011fini g\u00f6r\u00fcyor olaca\u011f\u0131z.<a href=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png\" alt=\"AWS CodePipeline Kullanarak Asp.NET Core WEB API Uygulamas\u0131n\u0131 AWS Elastic Beanstalk&#039;a Deploy Etme\" width=\"477\" height=\"189\" class=\"aligncenter size-full wp-image-26507\" srcset=\"https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12.png 477w, https:\/\/www.gencayyildiz.com\/blog\/wp-content\/uploads\/2023\/09\/AWS-CodePipeline-Kullanarak-Asp.NET-Core-WEB-API-Uygulamasini-AWS-Elastic-Beanstalka-Deploy-Etme-12-300x119.png 300w\" sizes=\"auto, (max-width: 477px) 100vw, 477px\" \/><\/a>\n<\/li>\n<\/ul>\n<p>Yap\u0131lan bu \u00e7al\u0131\u015fmalar neticesinde; ne zaman ki uygulaman\u0131n GitHub reposunda yeni bir commit gelir o zaman AWS CodePipeline servisi yeni s\u00fcr\u00fcm\u00fc \u00e7ekerek, build edecek ve ard\u0131ndan da deploy i\u015flemlerini ba\u015flatacakt\u0131r. Yani anlayaca\u011f\u0131n\u0131z pipeline&#8217;daki t\u00fcm s\u00fcre\u00e7ler otomatik olarak ba\u015ftan ba\u015flat\u0131lacakt\u0131r. B\u00f6ylece, basit d\u00fczeyde bir uygulama \u00fczerinden CI\/CD pipeline&#8217;\u0131n\u0131 \u00f6rneklendirmi\u015f ve bununla beraber AWS CodePipeLine, AWS CodeBuild ve AWS Elastic Beanstalk olmak \u00fczere \u00fc\u00e7 adet AWS servisini tan\u0131m\u0131\u015f ve tecr\u00fcbe etmi\u015f olduk. \u00d6zellikle AWS CodePipeLine servisi ile Asp.NET Core uygulamalar\u0131n\u0131 bir ka\u00e7 saniye i\u00e7inde production&#8217;a haz\u0131r hale otomatik olarak getirmeyi ve AWS Elastic Beanstalk servisi ile de olduk\u00e7a basit bir s\u00fcre\u00e7 e\u015fli\u011finde deploy etmeyi \u00f6\u011frenmi\u015f olduk. <\/p>\n<p>\u0130lgilenenlerin faydalanmas\u0131 dile\u011fiyle&#8230;<br \/>\nSonraki yaz\u0131lar\u0131mda g\u00f6r\u00fc\u015fmek \u00fczere&#8230;<br \/>\n\u0130yi \u00e7al\u0131\u015fmalar&#8230;<\/p>\n<p>Not : \u00d6rnek projeyi a\u015fa\u011f\u0131daki github adresinden edinebilirsiniz.<br \/>\n<a href=\"https:\/\/github.com\/gncyyldz\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example\" rel=\"noopener\" target=\"_blank\">https:\/\/github.com\/gncyyldz\/AWS.CodePipeline.And.AWS.Elastic.Beanstalk.Example<\/a><\/p>\n<!-- AddThis Advanced Settings generic via filter on the_content --><!-- AddThis Share Buttons generic via filter on the_content -->","protected":false},"excerpt":{"rendered":"<p>Merhaba, Bu i\u00e7eri\u011fimizde AWS CodePipeline arac\u0131n\u0131 kullanarak Asp.NET Core WEB API uygulamas\u0131n\u0131 AWS Elastic Beanstalk servisi \u00fczerinden deploy edecek ve b\u00f6ylece AWS CodePipeline&#8217;\u0131n, AWS CodeBuild&#8217;in ve AWS Elastic Beanstalk&#8217;\u0131n temellerini \u00f6\u011frenmi\u015f ve tecr\u00fcbe etmi\u015f&#46;&#46;&#46;<!-- AddThis Advanced Settings generic via filter on get_the_excerpt --><!-- AddThis Share Buttons generic via filter on get_the_excerpt --><\/p>\n","protected":false},"author":1,"featured_media":26508,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4730],"tags":[4906,4909,4908,4905,4907,4911,3358,3357,4904,3355,3356,3354,4910,3361,3359],"class_list":["post-26442","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aws","tag-aws-codebuild","tag-aws-codebuild-nedir","tag-aws-codepipeline-nedir","tag-aws-elastic-beanstalk","tag-aws-elastic-beanstalk-nedir","tag-builderspec-yml","tag-cd","tag-ci","tag-codepipeline","tag-continuous-delivery","tag-continuous-deployment","tag-continuous-integration","tag-procfile","tag-surekli-dagitim","tag-surekli-entegrasyon"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/26442","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/comments?post=26442"}],"version-history":[{"count":20,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/26442\/revisions"}],"predecessor-version":[{"id":26510,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/posts\/26442\/revisions\/26510"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media\/26508"}],"wp:attachment":[{"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/media?parent=26442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/categories?post=26442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gencayyildiz.com\/blog\/wp-json\/wp\/v2\/tags?post=26442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}