DevOps with Nginx
On a RHEL Linux web server for .NET apps - 3 days
This is a comprehensive 3-day training program designed to introduce complete beginners to NGINX, a powerful and versatile web server and reverse proxy. This course is uniquely tailored for .NET developers aiming to deploy applications on RHEL Linux. Our trainers, with over 30 years of development experience both in and outside Malaysia, bring a wealth of knowledge and practical insights to ensure a deep and practical understanding of NGINX, SSL/TLS, Fully Qualified Domain Names (FQDNs), certificates, and the nuances of deploying .NET applications on a Linux environment.
Learning Outcomes
By the end of this training, participants will be able to:
- Comprehend the usage of RHEL and its compatible distros such as CentOS etc.
- Understand the basics of a Linux deployment environment, including fundamental commands and file system navigation.
- Install, configure, and manage NGINX on a web server powered by Linux.
- Comprehend the concepts of SSL/TLS, FQDN, and the importance of web security.
- Acquire skills in managing SSL/TLS certificates.
- Deploy a .NET application on RHEL Linux using NGINX.
- Configure NGINX as a reverse proxy for a .NET application.
- Troubleshoot common issues in NGINX and .NET deployments on Linux.
- Understand best practices for securing and optimizing NGINX.
Prerequisites
- Basic understanding of web technologies and web servers.
- Familiarity with programming concepts (specifically .NET, although detailed coding skills are not required).
- Basic knowledge of command-line interfaces and text editors.
- A laptop with administrative access and the ability to install software.
Training Outline
- Introduction to RHEL Linux
- Overview of RHEL Linux and its compatible distributions.
- Installing and setting up RHEL Linux and its family of distros.
- Basic Linux commands and navigating the file system.
- Understanding the Linux directory structure.
- Installing software packages using package managers (apt).
- Fundamentals of NGINX
- Introduction to NGINX: history, uses, and advantages.
- Installing NGINX on RHEL compatibles such as CentOS or Rocky Linux.
- Basic configuration of NGINX.
- Hosting a simple HTML site using NGINX.
- Understanding NGINX configuration files and syntax.
- Managing NGINX service: starting, stopping, and reloading configurations.
- SSL/TLS and Certificates
- Understanding SSL/TLS and its importance for web security.
- Overview of FQDN and its role in web applications.
- Generating and installing SSL/TLS certificates.
- Configuring SSL/TLS in NGINX.
- Best practices for SSL/TLS and certificate management.
- Deploying .NET on RHEL Linux
- Overview of .NET Core and its compatibility with Linux.
- Setting up the .NET environment on RHEL.
- Deploying a basic .NET application on Linux.
- Understanding dependencies and compatibility issues.
- NGINX as a Reverse Proxy for .NET Applications
- Concept of reverse proxy and its use cases.
- Configuring NGINX as a reverse proxy for a .NET application.
- Handling static and dynamic content in NGINX.
- Tuning NGINX for optimal performance with .NET applications.
- Security and Optimization
- Securing NGINX and your .NET application on Linux.
- Implementing firewalls and security best practices.
- Optimizing NGINX for performance: caching, load balancing, and compression.
- Troubleshooting and Maintenance
- Common issues in NGINX and their solutions.
- Troubleshooting .NET application deployment issues on Linux.
- Logging and monitoring NGINX performance.
- Keeping NGINX and .NET applications updated and secure.
- Best Practices
- Recap of key concepts and best practices.
- Q&A session to address any remaining questions.
- Guidance on further learning resources and community involvement.
This training program not only explores NGINX on an RHEL environment but also covers compatible distros for training and testing.
Practical, connected learning
My wider training approach brings hands-on implementation and systems thinking together, connecting technology with real operational needs.