- Katılım
- 7 May 2010
- Konular
- 10,579
- Mesajlar
- 58,614
- Çözüm
- 219
- Online süresi
- 10mo 29d
- Reaksiyon Skoru
- 16,722
- Altın Konu
- 444
- TM Yaşı
- 16 Yıl 1 Ay 11 Gün
- Başarım Puanı
- 691
- MmoLira
- 19,928
- DevLira
- 601
HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Bu kılavuz size bir .NET 5 Web API'sinin Docker görüntüsünün nasıl oluşturulacağını gösterecektir. Ardından, Docker'ın yüklü olduğu herhangi bir bilgisayardan arka uç kodunu çalıştırmak ve ön uç web projenizden veya bir mobil uygulamadan API ile etkileşim kurmak için görüntüyü kullanabilirsiniz.
.NET 5 Web API'si Oluşturma
Hem Docker hem de .NET 5 açık kaynaklıdır ve platformlar arasıdır, bu nedenle macOS, Windows veya Linux kullanıyor olsanız da bu kılavuzu takip edebilirsiniz.Aşağıdaki komutla bir ASP.NET Web API projesi oluşturmak için dotnet CLI'yi kullanın:
Kod:
dotnet new webapi -o aspdockerapi
Yukarıdaki komut, aspdockerapi adlı bir proje oluşturur ve onu aynı adı taşıyan bir klasöre yerleştirir. Ayrıca uygulama, bazı örnek hava durumu tahmini verileriyle bir API denetleyicisi oluşturur.
Not : Eğer bilgisayarınızda .NET 5 kurulu değilse aşağıdaki linkten indirebilirsiniz.
Download:
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Proje oluşturulduktan sonra aşağıdaki komutu kullanarak projenin kök klasörüne gidebilirsiniz.
Kod:
cd aspdockerapi
Aşağıdaki komutu kullanarak web API'sini çalıştırabilir ve sunabilirsiniz.
Kod:
dotnet run
Varsayılan olarak, uygulama 5001 numaralı bağlantı noktasında sunulacaktır. Uygulamanın örnek verilerini tarayıcınızda şu URL'de görüntüleyebilirsiniz:
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
ve API verileri aşağıdaki gibi görünmelidir.
Docker Görüntü Talimatları Oluşturma
Bir Docker görüntüsü oluşturmak için Docker Engine'e nasıl oluşturulacağına dair bazı talimatlar vermeniz gerekir. Bu talimatlar Dockerfile adlı bir dosyaya yerleştirilmelidir . Dosyanın bir uzantısı olmadığını unutmayın.Uygulama projenizin kök klasöründe Dockerfile oluşturmak için aşağıdaki komutu kullanın.
Kod:
touch Dockerfile
Dockerfile dosyasını oluşturduktan sonra , projeleriniz klasör yapınız aşağıdakine benzer olmalıdır:
Kod:
FROM mcr.microsoft.com/dotnet/aspnet:5.0-focal AS base
WORKDIR /app
EXPOSE 80
FROM mcr.microsoft.com/dotnet/sdk:5.0-focal AS build
WORKDIR /src
COPY ["aspdockerapi.csproj", "./"]
RUN dotnet restore "./aspdockerapi.csproj"
COPY . .
WORKDIR "/src/."
RUN dotnet build "aspdockerapi.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "aspdockerapi.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "aspdockerapi.dll"]
Not : Yukarıdaki Dockerfile'de proje ve dll isimleri sırasıyla aspdockerapi.csproj ve aspdockerapi.dll'dir , eğer projeniz farklı bir isme sahipse Dockerfile'ınızı doğru isimlerle güncellediğinizden emin olun.
Dockerfile Talimatlarını Anlamak
Dockerfile ağırlıklı Kongre tarafından büyük harf kelimelerdir Dockerfile anahtar kelimeler oluşur. Anahtar sözcükler, Docker görüntüsünün her katmanında yürütülecek talimatı belirtir. Yukarıda Dockerfile'ın kullandığı ana Docker anahtar kelimeleri aşağıdadır.1. FROM
FROM kelime belirttiği bizim görüntüyü istediğiniz taban görüntü inşa edilecek. Yukarıdaki Dockerfile'de, ilk temel görüntü Microsoft'tan bir .NET 5 görüntüsüdür. .NET 5 temel görüntüsü, uygulamayı çalıştırmak için gerekli bileşenleri içerir.2. WORKDIR
WORKDIR, görüntünün içindeki çalışma dizinini veya bağlamını ayarlar. Bu örnekte, /app dizini, aşağıdaki WORKDIR /app ifadesi kullanılarak varsayılan kök çalışma dizini olarak atanmıştır .3. COPY
COPY bir klasöre ve birbiri içine yerleştirir gelen basitçe kopya içerik anahtar kelime. Bu örnekte, başlangıçta ana proje dosyasını, yani aspdockerapi'yi kopyalamak için kullanılır . csproj dosyasını resimlerin çalışma dizinine atın.4. RUN
RUN anahtar bir Docker resmin içindeki belirli Linux komutu çalıştırmak için kullanılır. In Dockerfile yukarıdaki, RUN komutu, bağımlılıkları geri ASP.NET proje oluşturmak ve proje yayımlamak için kullanılır.5. CMD
CMD anahtar biraz benzer RUN yukarıda ele alınan bir anahtar kelime. Aynı zamanda bir Linux komutunun çalıştırılmasında da kullanılır, ancak görüntüyü oluşturmak için komutları çalıştıran RUN anahtar sözcüğünden farklı olarak , CMD anahtar sözcüğü, bir kapsayıcı örneğinde görüntü başlatıldığında Linux komutlarını çalıştırmak için kullanılır.6.EXPOSE
EXPOSE dış dünyaya Docker görüntünün bir liman içini ortaya çıkarmak için kullanılır. Bu durumda görüntü, Docker kapsayıcısını çalıştırırken API'yi açığa çıkarmak için kullanılan 80 numaralı bağlantı noktasını gösterir.Docker Görüntüsünü Oluşturma
Docker görüntüsünü Dockerfile'a dayalı olarak oluşturmak için , projenin kök klasöründe, yani Dockerfile'ın yerleştirildiği yerde aşağıdaki komutu çalıştırmanız yeterlidir.
Kod:
docker build -t dockerwebapi -f Dockerfile .
Yukarıdaki komut, Docker görüntüsünü dockerwebapi adıyla etiketler ve ayrıca bu görüntüyü oluşturmaya yönelik talimatların Dockerfile içinde olduğunu belirtir .
Görüntünün oluşturulması tamamlandıktan sonra, aşağıdaki komutu kullanarak yerel bir Docker görüntüsü olarak listelenip listelenmediğini kontrol edebilirsiniz:
Kod:
docker images
Yukarıdaki komutun çıktısı aşağıdakine benzer olmalıdır ve bu durumda ilk satırda görüntü ( dockerwebapi ) görünür.
İndir :
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Docker Görüntüsünü Çalıştırma
Yeni oluşturulan Docker görüntüsünü çalıştırmak için aşağıdaki komutu kullanın. -Ti görüntü interaktif terminali modunda çalıştırmak gerektiğini seçenek belirtir ve --rm o çıktıktan sonra belirtir konteyner hemen kaldırılması gerektiğini.
Kod:
docker run -ti --rm -p 8080:80 dockerwebapi
Ayrıca komut, Docker kapsayıcısının, contianer içindeki 80 numaralı bağlantı noktasıyla eşleşen HTTP bağlantı noktası 8080 üzerinde çalışması gerektiğini belirtir.
Tarayıcınızda şu URL'ye gidin:
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
ve API verilerinizin, çalıştırmakta olduğunuz Docker örneğinden sunulduğunu göreceksiniz.Neden Docker'ı Kullanmalısınız?
Bu kılavuz size bir .NET 5 web API'sinin Docker görüntüsünün nasıl oluşturulacağını gösterdi.Docker ile uygulamalarınızı nasıl dağıtacağınızı otomatikleştirebilir, yazılım geliştirme ortamlarının kurulumunu basitleştirebilir ve diğer yazılım mühendisleriyle işbirliğini kolaylaştırabilirsiniz.
Docker ayrıca diğer sanallaştırma teknolojilerine göre çeşitli avantajlar sunar, bu yüzden muhtemelen yazılım mühendisliği projelerinizde kullanmayı düşünmelisiniz.
- Katılım
- 19 Ara 2020
- Konular
- 1,566
- Mesajlar
- 6,953
- Çözüm
- 12
- Online süresi
- 2mo 25d
- Reaksiyon Skoru
- 2,468
- Altın Konu
- 122
- TM Yaşı
- 5 Yıl 5 Ay 27 Gün
- Başarım Puanı
- 282
- MmoLira
- -119
- DevLira
- 80
Eline sağlık paylaşım için teşekkürler 

- Katılım
- 7 May 2010
- Konular
- 10,579
- Mesajlar
- 58,614
- Çözüm
- 219
- Online süresi
- 10mo 29d
- Reaksiyon Skoru
- 16,722
- Altın Konu
- 444
- TM Yaşı
- 16 Yıl 1 Ay 11 Gün
- Başarım Puanı
- 691
- MmoLira
- 19,928
- DevLira
- 601
Rica ederimEline sağlık paylaşım için teşekkürler![]()

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 2
- Görüntüleme
- 39
- Cevaplar
- 3
- Görüntüleme
- 113
- Cevaplar
- 4
- Görüntüleme
- 40
- Cevaplar
- 0
- Görüntüleme
- 50





