berkanuslu / kubernetes-dotnet-webapi

.NET Core 3.1 Web API Sample for Docker and Kubernetes

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

.NET Core 3.1 Web API Sample for Docker and Kubernetes

You can create a new Web API Sample with new command of dotnet CLI.

You can show all possible options with --help parameter.

dotnet new --help

Create a folder and change directory in this folder.

mkdir kubernetesdotnetwebapi
cd kubernetesdotnetwebapi

Now you can create a new Web API project just write this command below.

dotnet new webapi

.NET CLI is created all your need for Web API project with sample controller. Then you can build and run the application on http://localhost:5000 or https://localhost:5001 addresses.

dotnet build
dotnet run

.NET Web API App on Docker

You can build an image of your application with Dockerfile in this repo. Then you can build with this command below.

docker build --rm -f "Dockerfile" -t DOCKER_HUB_USERNAME/kubernetesdotnetwebapi:latest "."

After build process, you have an image for your app. You can run with this command below with port mapping.

docker run -p 8080:80 berkanuslu/kubernetesdotnetwebapi

.NET Web API App on Kubernetes

You can deploy your docker image on Kubernetes with deploy.yaml file in this repo. Then you can create this deployment with this command below.

kubectl create -f deploy.yaml

You can see all your app logs from kubectl logs. First of all, you need the name of your pod.

kubectl get pods

This command above has a list about your Kubernetes configuration and you see your pod name. Then with logs command, you can see all your current pod's log in your terminal screen.

kubectl logs -f kubernetes-dotnet-webapi-7877ff4cf7-s49lk

Versions

.NET 3.1.200

Docker version 19.03.8, build afacb8b

kubectl v1.15.5

Happy coding! April 2020

About

.NET Core 3.1 Web API Sample for Docker and Kubernetes

License:MIT License


Languages

Language:C# 88.8%Language:Dockerfile 11.2%