https://github.com/j-winston/personalblog-asp.netcore-docker
Personal Blog with ASP.NET Core MVC, Docker and Azure Integration
https://github.com/j-winston/personalblog-asp.netcore-docker
asp-net-core authentication azure-devops azure-sql azure-webapps blog-application bootstrap ci-cd containerization csharp docker entity-framework-core full-stack-development identity-framework mvc-architecture
Last synced: about 2 months ago
JSON representation
Personal Blog with ASP.NET Core MVC, Docker and Azure Integration
- Host: GitHub
- URL: https://github.com/j-winston/personalblog-asp.netcore-docker
- Owner: j-winston
- Created: 2024-08-24T13:39:19.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-10-03T22:55:27.000Z (about 1 year ago)
- Last Synced: 2024-11-14T17:33:41.949Z (12 months ago)
- Topics: asp-net-core, authentication, azure-devops, azure-sql, azure-webapps, blog-application, bootstrap, ci-cd, containerization, csharp, docker, entity-framework-core, full-stack-development, identity-framework, mvc-architecture
- Language: SCSS
- Homepage:
- Size: 34.5 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ASP.NET Core Blog Application
A clean, web-based blog application developed using **ASP.NET Core MVC**, **Entity Framework Core**, **Identity for authentication**, **Azure SQL Database** for data storage, and **Docker** for containerization and deployment.
I made this project to demonstrate modern web development practices including CI/CD with Azure DevOps and containerization using Docker.
## Features
- **User Authentication**: Powered by ASP.NET Core Identity for secure user registration, login, and password management.
- **Blog Post Management**: Users can create, edit, and delete their blog posts.
- **Image Upload**: Users can upload images for their blog posts.
- **Database**: Azure SQL Database is used for storing user data and blog content(Local MS Sql Server used for Development purposes)
- **Containerized Deployment**: The application is containerized with Docker and deployed to Azure Web Apps.
## Technologies Used
- **ASP.NET Core MVC**
- **Entity Framework Core**
- **ASP.NET Core Identity**
- **Azure SQL Database (Production db)**
- **Docker**
- **Bootstrap**
- **Azure Web Apps**
- **MS SQL Server(Development Db)**
## Prerequisites
- .NET SDK 8.0+
- Docker Desktop
- Azure account (for deployment)
- Azure SQL Database
## Getting Started
## 1. Clone the Repository
```bash
git clone https://github.com/yourusername/my-blog-app.git
cd my-blog-app
```
## 2. Setup Environment Variables
Before running the application, you need to set up the required environment variables. Depending on your environment (Development or Production), you may need to configure specific settings in `appsettings.Development.json` or `appsettings.Production.json`.
### ASP.NET Core Environment
- For **Development** environment:
```bash
export ASPNETCORE_ENVIRONMENT=Development
- For ** Production** environment:
```bash
export ASPNETCORE_ENVIRONMENT=Production
```
## 3. Apply Migrations
```bash
dotnet ef database update
```
## 4. Run the Application
### Local Development:
```bash
dotnet run
```
Navigate to `http://localhost:5005` on your browser. (This may change depending on your configuration)
### Docker Setup
```bash
docker-compose up --build
```
## 5. Deployment
- Set up CI/CD with Azure DevOps
- Push Docker imaged to Docker Hub(or wherever you choose)
- Deploy to Azure Web App
## Screenshots
### Home Page

### Post Details

### Admin Panel

### Login

### Update Post

### Project Status
This project is no longer open to contributions. Thank you!!