Jednou z hlavních výhod Dockeru je, že vám umožňuje spouštět softwarové projekty bez nutnosti nastavovat složitá vývojová prostředí.
Tato příručka vám ukáže, jak vytvořit image Dockeru webového rozhraní API .NET 5. Poté můžete pomocí obrázku spustit back-endový kód z libovolného počítače, na kterém je nainstalován Docker, a komunikovat s API z vašeho webového projektu front-end nebo mobilní aplikace.
Vytvoření webového rozhraní API .NET 5
Docker i .NET 5 jsou open-source a cross-platform, proto můžete postupovat podle této příručky, ať už používáte macOS, Windows nebo Linux.
Pomocí rozhraní dotnet CLI vytvořte projekt webového rozhraní API ASP.NET pomocí následujícího příkazu:
dotnet new webapi -o aspdockerapi
Výše uvedený příkaz vytvoří projekt s názvem aspdockerapi a umístí jej do složky se stejným názvem. Kromě toho aplikace vygeneruje řadič API s některými ukázkovými daty předpovědi počasí.
Poznámka: Pokud nemáte v počítači nainstalován .NET 5, můžete si jej stáhnout z níže uvedeného odkazu.
Stažení: .NET 5 Pro Windows, macOS a Linux
Jakmile je projekt vytvořen, můžete pomocí následujícího příkazu přejít do kořenové složky projektu.
cd aspdockerapi
Webové API můžete spustit a obsluhovat pomocí níže uvedeného příkazu.
běh dotnet
Ve výchozím nastavení se aplikace bude zobrazovat na portu 5001. Ukázková data aplikace si můžete prohlédnout ve svém prohlížeči na následující adrese URL: https://localhost: 5001 / předpověď počasí a údaje API by měly vypadat níže.
Více informací: Co je API?
Vytváření pokynů pro obrázky Dockeru
Chcete-li vytvořit image Dockeru, musíte poskytnout Docker Engine několik pokynů, jak jej vytvořit. Tyto pokyny by měly být umístěny do souboru s názvem Dockerfile. Všimněte si, že soubor nemá příponu.
Pomocí následujícího příkazu vytvořte Dockerfile v kořenové složce aplikačního projektu.
stiskněte Dockerfile
Po vytvoření Dockerfile, struktura vašich projektů by měla být podobná struktuře níže:
Nyní zkopírujte a vložte níže uvedený kód do svého Dockerfile.
FROM mcr.microsoft.com/dotnet/aspnet: 5.0-focal AS base
WORKDIR / aplikace
EXPOZICE 80
FROM mcr.microsoft.com/dotnet/sdk: 5.0-focal AS build
WORKDIR / src
KOPIE ["aspdockerapi.csproj", "./"]
RUN dotnet restore "./aspdockerapi.csproj"
KOPÍROVAT. .
WORKDIR "/ src /."
RUN dotnet build "aspdockerapi.csproj" -c Release -o / app / build
FROM sestavení AS publikovat
RUN dotnet publish "aspdockerapi.csproj" -c Release -o / app / publish
OD základny AS konečné
WORKDIR / aplikace
COPY --from = publish / app / publish.
ENTRYPOINT ["dotnet", "aspdockerapi.dll"]
Poznámka: Ve výše uvedeném souboru Dockerfile jsou názvy projektu a dll aspdockerapi.csproj a aspdockerapi.dll Pokud má váš projekt jiný název, nezapomeňte aktualizovat svůj Dockerfile správnými názvy.
Pochopení pokynů Dockerfile
The Dockerfile se skládá hlavně z klíčových slov Dockerfile, která jsou podle konvence slova s velkými písmeny. Klíčová slova určují instrukci k provedení v každé vrstvě obrazu Dockeru. Níže jsou uvedena hlavní klíčová slova Dockeru, která výše uvedený soubor Docker používá.
1. Z
The Z klíčové slovo určuje základní obrázek, na kterém chceme vytvořit náš obrázek. Ve výše uvedeném Dockerfile je počáteční základní image obrázek .NET 5 od Microsoftu. Základní image .NET 5 obsahuje nezbytné komponenty pro spuštění aplikace.
2. WORKDIR
WORKDIR nastaví pracovní adresář nebo kontext uvnitř obrázku. V tomto příkladu /app adresář je přiřazen jako výchozí kořenový pracovní adresář pomocí následujícího příkazu WORKDIR / aplikace.
3. KOPÍROVAT
The KOPÍROVAT klíčové slovo jednoduše zkopíruje obsah z jedné složky a umístí jej do jiné. V tomto příkladu se zpočátku používá ke kopírování hlavního souboru projektu, tj. aspdockerapi.csproj do pracovního adresáře obrázků.
4. BĚH
The BĚH klíčové slovo se používá ke spuštění konkrétního příkazu Linuxu v rámci obrazu Dockeru. V Dockerfile nad BĚH příkaz se používá k obnovení závislostí, sestavení projektu ASP.NET a publikování projektu.
5. CMD
The CMD klíčové slovo je trochu podobné BĚH klíčové slovo diskutované výše. Používá se také při spuštění příkazu Linux, ale na rozdíl od BĚH klíčové slovo, které spouští příkazy pro vytváření obrazu, CMD klíčové slovo se používá ke spuštění příkazů Linuxu při spuštění obrazu v instanci kontejneru.
6. EXPOZICE
The ODHALIT klíčové slovo se používá k vystavení portu uvnitř obrazu Dockeru vnějšímu světu. V tomto případě obrázek vystavuje port 80, který se používá pro vystavení API při spuštění kontejneru Docker.
Vytváření obrazu Dockeru
Chcete-li vytvořit image Dockeru na základě Dockerfile, jednoduše spusťte následující příkaz uvnitř kořenové složky projektu, tj. kde Dockerfile je umístěn.
docker build -t dockerwebapi -f Dockerfile.
Výše uvedený příkaz označí image Dockeru jménem dockerwebapi a také určuje, že pokyny pro vytvoření tohoto obrázku jsou v souboru Dockerfile.
Po dokončení vytváření obrazu můžete pomocí následujícího příkazu zkontrolovat, zda je uveden jako místní obraz Dockeru:
docker obrázky
Výstup z výše uvedeného příkazu by měl být podobný níže uvedenému a obrázek (dockerwebapi) se v tomto případě objeví na prvním řádku.
Pokud ve svém počítači nemáte nainstalovaný Docker, Zde je návod, jak nainstalovat Docker na Ubuntu Linux, jinak použijte níže uvedený odkaz ke stažení a instalaci Dockeru.
Stažení: Průvodce stahováním a instalací Dockeru
Spuštění Docker Image
Chcete-li spustit nově vytvořený obraz Dockeru, použijte následující příkaz. The -ti Možnost určuje, že obrázek by měl být spuštěn v režimu interaktivního terminálu, a --rm určuje, že kontejner by měl být odstraněn ihned po jeho opuštění.
docker run -ti --rm -p 8080: 80 dockerwebapi
Příkaz také určuje, že kontejner Dockeru by měl běžet na portu HTTP 8080, který se mapuje na port 80 uvnitř kontianeru.
Přejít na URL: http://localhost: 8080 / WeatherForecast v prohlížeči a zjistíte, že vaše data API jsou poskytována z instance Dockeru, kterou používáte.
Proč používat Docker?
Tato příručka vám ukázala, jak vytvořit image Dockeru webového rozhraní API .NET 5.
S Dockerem můžete automatizovat způsob nasazení vašich aplikací, zjednodušit nastavení prostředí pro vývoj softwaru a usnadnit spolupráci s dalšími softwarovými inženýry.
Docker také nabízí několik výhod oproti jiným virtualizačním technologiím, a proto byste pravděpodobně měli zvážit jeho použití ve vašich projektech softwarového inženýrství.
Docker poskytuje mnoho výhod oproti virtuálnímu stroji, proto je dnes třeba začít používat.
Přečtěte si další
- Programování
- Webový vývoj
- Přístavní dělník
- ASP.NET

Mwiza vyvíjí software podle povolání a rozsáhle píše o Linuxu a front-end programování. Mezi jeho zájmy patří historie, ekonomie, politika a podniková architektura.
Přihlaste se k odběru našeho zpravodaje
Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!
Ještě jeden krok…!
V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.