KategorilerC#İnternetLinuxProgramlamaWindows

ASP.NET Core Uygulamasını Heroku ile Ücretsiz Yayınlamak

Merhaba Muhterem Ziyaretçilerimiz,

Bu yazımda Heroku ile .NET CORE Web uygulamasına nasıl yayımlanacağını anlatmaya çalışacağım.

Visual Studio üzerinden hazırlanmışsa:

“%UserProfile%\kullaniciAdi\source\repos\projeAdi\projeAdi” klasörüne Dockerfile ve .circlei klasörünü ekliyoruz.

Dockerfile içeriği

FROM mcr.microsoft.com/dotnet/core/sdk:3.1 AS build-env
WORKDIR /app

# Copy csproj and restore as distinct layers
COPY *.csproj ./
RUN dotnet restore

# Copy everything else and build
COPY . ./
RUN dotnet publish -c Release -o out

# Build runtime image
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .
CMD ASPNETCORE_URLS=http://*:$PORT ./projeAdi

.circleci\config.yml içeriği

version: 2
jobs:
 build:
   machine: true
   steps:
     - checkout 

     # build image
     - run: |         
         docker info
         docker build -t aspnetapp -f Dockerfile .
     # deploy the image
     - run: |         
         docker login --username=$HEROKU_USERNAME --password=$HEROKU_API_KEY registry.heroku.com
         docker tag aspnetapp registry.heroku.com/$HEROKU_APP_NAME/web
         docker push registry.heroku.com/$HEROKU_APP_NAME/web                
         curl https://cli-assets.heroku.com/install.sh | sh
         heroku container:release web -a $HEROKU_APP_NAME

değerleri ile yazıldıktan sonra github ile pushlayıp heroku uygulaması ve circleci projesi oluşturuyoruz.

CircleiCI projesi oluşturuken resimdeki gibi uyguluyoruz.

Bulid işlemlemine başlayacaktır fakat hata verecektir.

Hatanın çözmek ve heroku ile siteyi yayınlanması için “Project Settings” -> “Environment Variables” yolunu takip ederek aşağıdaki değişkenler eklenir.

HEROKU_APP_NAME :Heroku üzerinden oluşturduğunuz uygulamanın adı

HEROKU_API_KEY :https://dashboard.heroku.com/account adresinden (“Reveal” butonuna tıklayarak) erişebilirsiniz.

HEROKU_USERNAME :Heroku kayıt olurken kullandığınız e-posta adresi https://dashboard.heroku.com/account adresinden erişebilirsiniz.

Şimdi tekrar build edebiliriz. Build etmek için sol menüden builds sekmesine gidip son fail olan builde tıklayıp sağ üste bulunan Rerun workflow butonuna basıyoruz ve build işlemimiz tekrar başlıyor.

Bulid işlemi başarılı ise heroku üzerinden site yayınlanmış olur.

Eğer bu yazıyla ilişkin anlatamadığım\anlaşılamayan konular varsa yazının altına yorum yapabilirsiniz.

İyi günler.

Yayınlayan Yakup CONTARLI

04-05-1998'de dünyaya geldim. 2004 - 2012 arasında İTO Kadınlar Çeşmesi İlköğretim Okulunda eğitim gördüm. 2012 - 2016 arasın Kağıthane İTO Mesleki ve Teknik Anadolu Lisesi Bilişim Teknolojileri \Web Programcığı eğitim gördüm. 2016-2018 Atatürk Üniversitesi Açıköğretim Fakültesi Bilgi Yönetimi Programı 2017-2019 Ahmet Yesevi Üniversitesi Bilgisayar Programcılığı mezunuyum. 2016'dan itibaren Bankacılık Düzenleme ve Denetleme Kurumu'nda (BDDK) Bilişim Teknisyeni olarak kamu vazifesini yerine getirmekteyim.