Docker ve ASP.NET Core
Docker, uygulamaları ve bağımlılıklarını izole konteynerlar içinde paketleyen açık kaynak bir platformdur. ASP.NET Core uygulamalarını Docker ile konteynerize etmek; "bende çalışıyor ama sunucuda çalışmıyor" sorununu ortadan kaldırır, deployment süreçlerini hızlandırır ve ölçeklemeyi kolaylaştırır. Microsoft, .NET 8 için optimized resmi Docker imajları sunar.
Dockerfile Oluşturma
# Build aşaması
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
WORKDIR /app
COPY *.csproj .
RUN dotnet restore
COPY . .
RUN dotnet publish -c Release -o out
# Runtime aşaması (daha küçük imaj)
FROM mcr.microsoft.com/dotnet/aspnet:8.0
WORKDIR /app
COPY --from=build /app/out .
EXPOSE 8080
ENTRYPOINT ["dotnet", "BenimUygulamam.dll"]
Docker Komutları
# İmaj oluşturma
docker build -t benim-uygulama .
# Konteyner çalıştırma
docker run -d -p 8080:8080 --name uygulama benim-uygulama
# Logları görüntüleme
docker logs uygulama
# Konteyner durdurma
docker stop uygulama
Docker Compose ile Çoklu Servis
services:
web:
build: .
ports:
- "8080:8080"
depends_on:
- db
environment:
- ConnectionStrings__Default=Server=db;Database=AppDb;User=sa;Password=Sifre123!
db:
image: mcr.microsoft.com/mssql/server:2022-latest
environment:
SA_PASSWORD: "Sifre123!"
ACCEPT_EULA: "Y"
Azure Container Apps ile Cloud Deploy
Azure Container Apps, konteynerize ASP.NET Core uygulamalarını yönetilen ortamda serverless olarak çalıştırır. Azure Container Registry ile imaj depolanır; GitHub Actions CI/CD pipeline ile her commit sonrası otomatik deployment sağlanır.
Kubernetes ile Orkestrasyon
Büyük ölçekli deployment için Kubernetes (AKS — Azure Kubernetes Service) kullanılır. Deployment ve Service YAML dosyalarıyla replica sayısı, load balancing ve health check tanımlanır. Kubernetes; yatay ölçekleme, rolling update ve self-healing özellikleri sunar.
Bilkey ASP.NET ile Web Programlama Kursu
Bilkey Bilişim Akademisi ASP.NET ile Web Programlama Kursu'nda ASP.NET Core geliştirme, Docker, deployment ve modern web teknolojileri uygulamalı olarak öğretilmektedir. Kurtköy merkezimizde .NET geliştirici olun. 0216 354 7979