DEV Community

Cover image for Automating .NET Core Deployment to IIS with Jenkins | CI/CD Pipeline Setup
Takneekigyanguru
Takneekigyanguru

Posted on

Automating .NET Core Deployment to IIS with Jenkins | CI/CD Pipeline Setup

⚙️ Automating .NET Core Deployment to IIS with Jenkins | CI/CD Pipeline Setup

Tired of deploying your .NET Core applications manually to IIS?
Let’s fix that! 🚀

In this step-by-step tutorial, you'll learn how to automate .NET Core application deployment to IIS using Jenkins CI/CD pipelines — saving time, improving consistency, and reducing human error.

🎥 Full Video Tutorial:
👉 Automating .NET Core Deployment to IIS with Jenkins | CI/CD Pipeline Setup

🧩 What You’ll Learn

This tutorial covers everything you need to create a complete CI/CD pipeline for .NET Core applications:

Jenkins Pipeline Setup — building a continuous integration workflow for .NET Core

IIS Configuration Automation — automate website setup and deployment

Ansible / Chef / Puppet Integration — manage infrastructure and application provisioning efficiently

Seamless Deployment — push new versions of your app automatically after each successful build

🔧 Prerequisites

Before starting, make sure you have:

Jenkins installed and configured

IIS running on your target Windows Server

.NET Core SDK installed on both Jenkins and deployment machine

Basic familiarity with PowerShell, Ansible, or Chef/Puppet

🏗️ Step-by-Step Outline
1️⃣ Create a Jenkins Pipeline

Define your pipeline stages:

Build the .NET Core project

Test with NUnit or xUnit

Package the application into an artifact

Deploy automatically to IIS

Example snippet:

pipeline {
agent any
stages {
stage('Build') {
steps {
bat 'dotnet build MyWebApp.sln'
}
}
stage('Publish') {
steps {
bat 'dotnet publish -c Release -o publish'
}
}
stage('Deploy to IIS') {
steps {
bat 'powershell.exe -ExecutionPolicy Bypass -File deploy.ps1'
}
}
}
}

2️⃣ Automate IIS Configuration

Use PowerShell or a configuration management tool (like Ansible/Chef/Puppet) to:

Create the IIS website

Set the physical path

Bind the correct port

Deploy the latest build

3️⃣ Integrate Infrastructure as Code

If you want full automation:

Ansible: Use win_iis_website and win_copy modules

Chef/Puppet: Define IIS site as a resource

Trigger these tasks from Jenkins pipeline

🧰 Related Videos

🎬 Create .NET Core Web App | Automate .NET Core Web App Deployment with Jenkins Pipeline

💡 Why Automate?

Manual deployments lead to:
❌ Inconsistent environments
❌ Missed steps under pressure
❌ Difficult rollback

Automating CI/CD ensures:
✅ Consistency
✅ Faster releases
✅ Reliability and visibility

🧠 Ideal For

DevOps engineers automating .NET pipelines

Developers learning CI/CD for Microsoft stack

Anyone setting up hybrid infrastructure deployments

🧾 Tags

DotNet #Jenkins #CICD #DevOps #IIS #Automation #Ansible #Chef #Puppet #TakneekiGyanGuru

✨ Author

Takneeki Gyan Guru — simplifying AI, ML, Cloud, DevOps, and Software Engineering with practical tutorials.
Follow for more step-by-step guides on CI/CD, Automation, and Cloud-native development.

Top comments (0)