Docker'ın ana avantajlarından biri, karmaşık geliştirme ortamları kurmaya gerek kalmadan yazılım projelerini çalıştırmanıza izin vermesidir.

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:

 dotnet yeni webapi -o aspdockerapi 

Yukarıdaki komut adlı bir proje oluşturur aspdockerapi ve 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.

İndir: .NET 5 Windows, macOS ve Linux için

Proje oluşturulduktan sonra aşağıdaki komutu kullanarak projenin kök klasörüne gidebilirsiniz.

cd aspdockerapi

Aşağıdaki komutu kullanarak web API'sini çalıştırabilir ve sunabilirsiniz.

 dotnet çalışması 

Varsayılan olarak, uygulama 5001 numaralı bağlantı noktasında sunulacaktır. Uygulamanın örnek verilerini tarayıcınızda aşağıdaki URL'de görüntüleyebilirsiniz: https://localhost: 5001/hava tahmini ve API verileri aşağıdaki gibi görünmelidir.

Daha fazla bilgi edin: API Nedir?

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 adlı bir dosyaya yerleştirilmelidir. docker dosyası. Dosyanın bir uzantısı olmadığını unutmayın.

oluşturmak için aşağıdaki komutu kullanın. docker dosyası uygulama projenizin kök klasöründe.

Dockerfile'a dokunun

oluşturduktan sonra docker dosyası, projeleriniz klasör yapınız aşağıdakine benzer olmalıdır:

Şimdi, aşağıdaki kodu kopyalayıp dosyanıza yapıştırın. docker dosyası.

mcr.microsoft.com/dotnet/aspnet'TEN: 5.0 odaklı AS tabanı
WORKDIR / uygulama
MARUZ KALMA 80
mcr.microsoft.com/dotnet/sdk'DEN: 5.0 odaklı AS yapı
WORKDIR /src
KOPYALA ["aspdockerapi.csproj", "./"]
ÇALIŞTIR dotnet restore "./aspdockerapi.csproj"
KOPYALA. .
WORKDIR "/src/."
ÇALIŞTIR dotnet build "aspdockerapi.csproj" -c Release -o /app/build
Build AS yayınından
ÇALIŞTIR dotnet "aspdockerapi.csproj" yayınla -c Release -o /app/publish
Temelden son olarak
WORKDIR / uygulama
KOPYALA --from=yayınla /app/yayınla .
GİRİŞ NOKTASI ["dotnet", "aspdockerapi.dll"]

Not: Yukarıdaki Dockerfile'de proje ve dll isimleri aspdockerapi.csproj ve aspdockerapi.dll sırasıyla, projenizin adı farklıysa, Dockerfile'nizi doğru adlarla güncellediğinizden emin olun.

Dockerfile Talimatlarını Anlamak

docker dosyası çoğunlukla büyük harfli sözcükler olan Dockerfile anahtar sözcüklerinden 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. DAN

DAN anahtar kelime, imajımızın üzerine inşa edilmesini istediğimiz temel imajı belirtir. 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. İŞ DİREKTÖRÜ

İŞ DİREKTÖRÜ görüntünün içindeki çalışma dizinini veya bağlamı ayarlar. Bu örnekte, /app dizin, aşağıdaki ifade kullanılarak varsayılan kök çalışma dizini olarak atanır WORKDIR / uygulama.

3. KOPYALA

KOPYALA anahtar kelime, içeriği bir klasörden kopyalar ve başka bir klasöre yerleştirir. Bu örnekte, başlangıçta ana proje dosyasını kopyalamak için kullanılır, yani, aspdockerapi.csproj görüntülerin çalışma dizinine.

4. ÇALIŞTIRMAK

ÇALIŞTIRMAK anahtar sözcüğü, bir Docker görüntüsü içinde belirli bir Linux komutunu çalıştırmak için kullanılır. İçinde docker dosyası yukarıda ÇALIŞTIRMAK komutu, bağımlılıkları geri yüklemek, ASP.NET projesini oluşturmak ve projeyi yayınlamak için kullanılır.

5. CMD

CMD anahtar kelimeye biraz benzer ÇALIŞTIRMAK Yukarıda tartışılan anahtar kelime. Aynı zamanda bir Linux komutunun çalıştırılmasında da kullanılır, ancak ÇALIŞTIRMAK görüntüyü oluşturmak için komutları çalıştıran anahtar sözcük, 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.POZLAMA

MARUZ BIRAKMAK anahtar sözcüğü, Docker görüntüsünün içindeki bir bağlantı noktasını dış dünyaya göstermek 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ü temel alarak oluşturmak için liman dosyası, projenin kök klasöründe aşağıdaki komutu çalıştırmanız yeterlidir; docker dosyası yerleştirilmiş.

docker build -t dockerwebapi -f Dockerfile .

Yukarıdaki komut, Docker görüntüsünü şu adla etiketler. dockerwebapi ve ayrıca bu görüntüyü oluşturmaya yönelik talimatların docker dosyası.

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:

liman işçisi resimleri

Yukarıdaki komutun çıktısı aşağıdakine benzer olmalıdır ve görüntü (dockerwebapi) bu durumda ilk satırda görünür.

Bilgisayarınızda Docker yüklü değilse, Ubuntu Linux'ta docker nasıl kurulur, aksi takdirde Docker'ı indirmek ve kurmak için aşağıdaki bağlantıyı kullanın.

İndir: Docker indirme ve kurulum kılavuzu

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 seçeneği, görüntünün etkileşimli bir uçbirim modunda çalıştırılması gerektiğini belirtir ve --rm Kapsayıcının çıktıktan hemen sonra kaldırılması gerektiğini belirtir.

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.

URL'ye gidin: http://localhost: 8080/Hava Durumu API verilerinizin, çalıştırmakta olduğunuz Docker örneğinden sunulmakta olduğ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.

E-posta
Docker Sanallaştırma Yazılımını Kullanmak için 6 Neden

Docker, sanal bir makineye göre birçok avantaj sağlar; onu bugün kullanmaya başlamanın nedenleri burada.

Sonrakini Oku

İlgili konular
  • Programlama
  • Web Geliştirme
  • Liman işçisi
  • ASP.NET
Yazar hakkında
Mwiza Kumwenda (26 Makale Yayınlandı)

Mwiza, mesleğe göre yazılım geliştirir ve Linux ve ön uç programlama üzerine kapsamlı bir şekilde yazar. İlgi alanlarından bazıları tarih, ekonomi, politika ve işletme mimarisidir.

Mwiza Kumwenda'dan Daha Fazla

Haber bültenimize abone ol

Teknik ipuçları, incelemeler, ücretsiz e-kitaplar ve özel fırsatlar için bültenimize katılın!

Bir adım daha…!

Lütfen size az önce gönderdiğimiz e-postadaki e-posta adresinizi onaylayın.

.