Едно от основните предимства на Docker е, че ви позволява да стартирате софтуерни проекти, без да е необходимо да създавате сложни среди за разработка.

Това ръководство ще ви покаже как да създадете образ на Docker на .NET 5 Web API. След това можете да използвате изображението, за да стартирате бекенд кода от всеки компютър, на който е инсталиран Docker, и да взаимодействате с API от вашия уеб сайт или мобилно приложение.

Създаване на .NET 5 уеб API

Както Docker, така и .NET 5 са ​​с отворен код и междуплатформени, следователно можете да следвате това ръководство независимо дали използвате macOS, Windows или Linux.

Използвайте dotnet CLI, за да създадете ASP.NET уеб API проект със следната команда:

 dotnet new webapi -o aspdockerapi 

Командата по-горе създава проект с име aspdockerapi и го поставя в папка със същото име. В допълнение, приложението скелира API контролер с някои примерни данни за прогноза на времето.

Забележка: Ако нямате инсталиран .NET 5 на вашия компютър, можете да го изтеглите от връзката по-долу.

instagram viewer

Изтегли: .NET 5 За Windows, macOS и Linux

След като проектът е създаден, можете да влезете в основната папка на проекта, като използвате следната команда.

cd aspdockerapi

Можете да стартирате и обслужвате уеб API чрез командата по-долу.

 dotnet бягане 

По подразбиране приложението ще се обслужва на порт 5001. Можете да видите примерните данни на приложението във вашия браузър на следния URL адрес: https://localhost: 5001 / прогноза за времето и данните за API трябва да изглеждат по-долу.

Научете повече: Какво е API?

Създаване на инструкции за изображения на Docker

За да създадете образ на Docker, трябва да дадете на Docker Engine някои инструкции как да го изградите. Тези инструкции трябва да бъдат поставени във файл с име Докер файл. Имайте предвид, че файлът няма разширение.

Използвайте следната команда, за да създадете Докер файл в основната папка на вашия проект на приложение.

докоснете Dockerfile

След създаване на Докер файл, структурата на папките на вашите проекти трябва да бъде подобна на тази по-долу:

Сега копирайте и поставете кода по-долу във вашия Докер файл.

ОТ mcr.microsoft.com/dotnet/aspnet: 5.0-фокусна AS база
WORKDIR / ап
ЕКСПОЗИЦИЯ 80
ОТ mcr.microsoft.com/dotnet/sdk: 5.0-focal AS build
WORKDIR / src
КОПИРАНЕ ["aspdockerapi.csproj", "./"]
RUN dotnet възстановяване "./aspdockerapi.csproj"
КОПИЕ. .
WORKDIR "/ src /."
ИЗПЪЛНЕТЕ dotnet build "aspdockerapi.csproj" -c Release -o / app / build
FROM build AS публикува
РАБОТА dotnet публикува "aspdockerapi.csproj" -c Release -o / app / публикуване
ОТ база КАТО окончателен
WORKDIR / ап
КОПИРАНЕ - от = публикуване / приложение / публикуване.
ENTRYPOINT ["dotnet", "aspdockerapi.dll"]

Забележка: В Dockerfile по-горе имената на проекта и dll са aspdockerapi.csproj и aspdockerapi.dll съответно, ако вашият проект има различно име, не забравяйте да актуализирате вашия Dockerfile с правилните имена.

Разбиране на инструкциите за Dockerfile

The Докер файл се състои главно от ключови думи Dockerfile, които по правило са думи с главни букви. Ключовите думи посочват инструкцията за изпълнение във всеки слой от изображението на Docker. По-долу са основните ключови думи за Docker, които Dockerfile използва по-горе.

1. ОТ

The ОТ ключова дума определя основното изображение, върху което искаме да бъде изградено нашето изображение. В Dockerfile по-горе първоначалното основно изображение е .NET 5 изображение от Microsoft. Основното изображение .NET 5 съдържа необходимите компоненти за стартиране на приложението.

2. WORKDIR

WORKDIR задава работната директория или контекст вътре в изображението. В този пример, /app директория се присвоява като основна работна директория по подразбиране, използвайки следния израз WORKDIR / ап.

3. КОПИЕ

The КОПИЕ ключовата дума просто копира съдържанието от една папка и го поставя в друга. В този пример първоначално се използва за копиране на основния файл на проекта, т.е. aspdockerapi.csproj в работната директория за изображения.

4. РАБОТА

The РАБОТА Ключовата дума се използва за изпълнение на конкретна Linux команда в Docker изображение. В Докер файл над РАБОТА команда се използва за възстановяване на зависимости, изграждане на проекта ASP.NET и публикуване на проекта.

5. CMD

The CMD ключовата дума е малко подобна на РАБОТА ключова дума, обсъдена по-горе. Използва се и при стартиране на Linux команда, но за разлика от РАБОТА ключова дума, която изпълнява команди за изграждане на изображението, CMD Ключовата дума се използва за стартиране на команди на Linux при стартиране на изображението в контейнер.

6. ЕКСПОЗИЦИЯ

The ЕКСПОЗИЦИЯ ключовата дума се използва за излагане на порт вътре в изображението на Docker на външния свят. В този случай изображението излага порт 80, който се използва за излагане на API при изпълнение на контейнера на Docker.

Изграждане на изображението на Docker

За изграждане на изображението на Docker въз основа на Dockerfile, просто изпълнете следната команда в основната папка на проекта, т.е. където Докер файл е поставен.

docker build -t dockerwebapi -f Dockerfile.

Командата по-горе маркира изображението на Docker с името dockerwebapi и също така посочва, че инструкциите за изграждане на това изображение са в Докер файл.

След като изображението приключи, можете да проверите дали е посочено като локално изображение на Docker, като използвате следната команда:

изображения на докер

Резултатът от командата по-горе трябва да бъде подобен на този по-долу и изображението (dockerwebapi) се появява на първия ред в този случай.

Ако нямате инсталиран Docker на вашия компютър, ето как да инсталирате докер на Ubuntu Linux, в противен случай използвайте връзката по-долу, за да изтеглите и инсталирате Docker.

Изтегли: Ръководство за изтегляне и инсталиране на Docker

Стартиране на изображението на Docker

За да стартирате новосъздадения образ на Docker, използвайте следната команда. The -ти Опцията указва, че изображението трябва да се изпълнява в интерактивен терминален режим и - rm указва, че контейнерът трябва да бъде премахнат веднага след излизането му.

docker run -ti --rm -p 8080: 80 dockerwebapi

Освен това командата посочва, че контейнерът на Docker трябва да работи на HTTP порт 8080, който се свързва с порт 80 вътре в контейнера.

Отидете на URL адреса: http://localhost: 8080 / WeatherForecast във вашия браузър и ще откриете, че данните ви за API се обслужват от екземпляра на Docker, който използвате.

Защо да използвам Docker?

Това ръководство ви показа как да създадете образ на Docker на уеб API на .NET 5.

С Docker можете да автоматизирате начина, по който разгръщате приложенията си, да опростите настройката на среди за разработка на софтуер и да улесните сътрудничеството с колеги софтуерни инженери.

Docker предлага и няколко предимства пред другите технологии за виртуализация, поради което вероятно би трябвало да помислите за използването му във вашите проекти за софтуерно инженерство.

електронна поща
6 причини за използване на софтуера за виртуализация на Docker

Docker предоставя много предимства пред виртуална машина, ето причините да започнете да я използвате днес.

Прочетете Напред

Свързани теми
  • Програмиране
  • Уеб разработка
  • Докер
  • ASP.NET
За автора
Mwiza Kumwenda (Публикувани 26 статии)

Mwiza разработва софтуер по професия и пише много за Linux и програмиране отпред. Някои от интересите му включват история, икономика, политика и архитектура на предприятията.

Още от Mwiza Kumwenda

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и ексклузивни оферти!

Още една стъпка…!

Моля, потвърдете имейл адреса си в имейла, който току-що ви изпратихме.

.