Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
apcurrier committed May 21, 2024
2 parents 47d3b6f + 6f9a8a8 commit 2ae9461
Show file tree
Hide file tree
Showing 34 changed files with 1,144 additions and 364 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,5 @@ Thumbs.db

# Misc Dir #
############
.apc/
.apc/
lab/kubernetes-ingress
4 changes: 2 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Changelog

## 1.0.0 (Month Date, Year)
## 1.0.0 (April 1, 2024)

Initial release of the NGINX template repository.
Initial release of the NGINXaaS for Azure Workshop.
28 changes: 2 additions & 26 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ The following is a set of guidelines for contributing to this project. We really

[Contributing](#contributing)

[Code Guidelines](#code-guidelines)

[Code of Conduct](https://github.com/nginxinc/nginx-azure-workshops/blob/main/CODE_OF_CONDUCT.md)

## Getting Started
Expand All @@ -24,28 +22,6 @@ Follow our [Getting Started Guide](https://github.com/nginxinc/nginx-azure-works

To report a bug, open an issue on GitHub with the label `bug` using the available bug report issue template. Please ensure the bug has not already been reported. **If the bug is a potential security vulnerability, please report it using our [security policy](https://github.com/nginxinc/nginx-azure-workshops/blob/main/SECURITY.md).**

### Suggest a Feature or Enhancement

To suggest a feature or enhancement, please create an issue on GitHub with the label `enhancement` using the available [feature request template](https://github.com/nginxinc/nginx-azure-workshops/blob/main/.github/feature_request_template.md). Please ensure the feature or enhancement has not already been suggested.

### Open a Pull Request

- Fork the repo, create a branch, implement your changes, add any relevant tests, submit a PR when your changes are **tested** and ready for review.
- Fill in [our pull request template](https://github.com/nginxinc/nginx-azure-workshops/blob/main/.github/pull_request_template.md).

Note: if you'd like to implement a new feature, please consider creating a [feature request issue](https://github.com/nginxinc/nginx-azure-workshops/blob/main/.github/feature_request_template.md) first to start a discussion about the feature.

## Code Guidelines

<!-- ### Go/Python/Bash/etc... Guidelines (OPTIONAL) -->

### Git Guidelines
### Provide Feedback on a Lab Exercise

- Keep a clean, concise and meaningful git commit history on your branch (within reason), rebasing locally and squashing before submitting a PR.
- If possible and/or relevant, use the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format when writing a commit message, so that changelogs can be automatically generated
- Follow the guidelines of writing a good commit message as described here <https://chris.beams.io/posts/git-commit/> and summarised in the next few points:
- In the subject line, use the present tense ("Add feature" not "Added feature").
- In the subject line, use the imperative mood ("Move cursor to..." not "Moves cursor to...").
- Limit the subject line to 72 characters or less.
- Reference issues and pull requests liberally after the subject line.
- Add more detailed description in the body of the git message (`git commit -a` to give you more space and time in your text editor to write a good message instead of `git commit -am`).
To send us feedback, please create an issue on GitHub with the label `feedback` using the available feedback template.
106 changes: 66 additions & 40 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,66 +3,92 @@
[![Community Support](https://badgen.net/badge/support/community/cyan?icon=awesome)](https://github.com/nginxinc/template-repository/blob/main/SUPPORT.md)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/nginxinc/template-repository/main/CODE_OF_CONDUCT.md)

# NGINX Template Repository
## github.com/nginxinc/nginx_azure_workshops

## What is included on this template?
[![Project Status: Concept – Minimal or no implementation has been done yet, or the repository is only intended to be a limited example, demo, or proof-of-concept.](https://www.repostatus.org/badges/latest/concept.svg)](https://www.repostatus.org/#concept)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/nginxinc/nginx-azure-workshops/badge)](https://securityscorecards.dev/viewer/?uri=github.com/nginxinc/nginx-azure-workshops)
[![Community Support](https://badgen.net/badge/support/community/cyan?icon=awesome)](https://github.com/nginxinc/nginx-azure-workshops/blob/main/SUPPORT.md) [![Commercial Support](https://badgen.net/badge/support/commercial/cyan?icon=awesome)](http://support.f5.com)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/nginxinc/nginx-azure-workshops/main/CODE_OF_CONDUCT.md)

This template includes all the scaffolding you need to get started on an OSS repository that meets the required NGINX criteria:
<br/>

- [Apache License 2.0](https://github.com/nginxinc/template-repository/blob/main/LICENSE) (required for all NGINX OSS projects)
- [`.gitignore`](https://github.com/nginxinc/template-repository/blob/main/.gitignore) with some minimal sensible defaults
- [Issue](https://github.com/nginxinc/template-repository/blob/main/.github/ISSUE_TEMPLATE) and [PR](https://github.com/nginxinc/template-repository/blob/main/pull_request_template.md) templates
- [Contributing](https://github.com/nginxinc/template-repository/blob/main/CONTRIBUTING.md) guidelines
- [Support](https://github.com/nginxinc/template-repository/blob/main/SUPPORT.md) guidelines for either community and/or commercial support
- [Security](https://github.com/nginxinc/template-repository/blob/main/SECURITY.md) guidelines for reporting major vulnerabilities
- [Code of Conduct](https://github.com/nginxinc/template-repository/blob/main/CODE_OF_CONDUCT.md)
- Open Source Security Foundation (OSSF) Scorecard [(implemented via a GitHub Action)](https://github.com/nginxinc/template-repository/blob/main/.github/workflows/ossf_scorecard.yml)
- [README](https://github.com/nginxinc/template-repository/blob/main/README.md) placeholder. How you structure the README is up to you (although the template provides placeholder sections), but you will need to include:
- A [repostatus](https://www.repostatus.org/) badge
- An OSSF Scorecard badge. (Optional -- Some projects will by their nature have low scores. In such a case you might want to remove this badge!)
- A community and/or commercial support badge. Include the latter -- and replace the commented out badge/URL placeholder with the relevant support URL -- if this repository contains a commercially supported project. You can find a commented out example below the community badge in this README.
- A contributor covenant/code of conduct badge. (Optional -- If you already have multiple badges and want to reduce clutter, simply including the actual code of conduct is enough!)
- An explicit link back to the [Apache License 2.0](https://github.com/nginxinc/template-repository/blob/main/LICENSE)
- An up to date copyright notice
- [Changelog](https://github.com/nginxinc/template-repository/blob/main/CHANGELOG.md) placeholder. (Optional -- A changelog is recommended, but it is not required and can diverge in format from the placeholder here included.)
- [Codeowners](https://github.com/nginxinc/template-repository/blob/main/.github/CODEOWNERS) placeholder. (Optional -- Codeowners is a useful feature, but not all repositories require them.)
# NGINXaaS for Azure Workshop 301

**Note:** If you created a public repository before this template became available (or you didn't know about it's existence), please include any missing files found here in your repository. There is no need if you have a private repository, but we still recommend you include all of the above scaffolding should the repository ever become public.
![](labs/media/nginx-azure-icon.png)

## How do I use this template?
<br/>

**DO NOT FORK** -- this template is meant to be used from the **[`Use this template`](https://github.com/nginxinc/template-repository/generate)** feature.
This Repo is for learning **`NGINX as a Service in Azure`**, with Instructor Lead and Hands-on Lab Exercises and Lab Guides that will teach a student using real world scenarios for using NGINX in front of Azure Resources.

1. Click on **[`Use this template`](https://github.com/nginxinc/template-repository/generate)**
2. Give a name to your project
3. Wait until the first run of CI finishes (GitHub Actions will process the template and commit to your new repo)
4. Clone your new project and tweak any of the placeholders if necessary. Pay special attention to the README!
5. Happy coding!
<br>

**NOTE**: **WAIT** until the first CI run on GitHub Actions finishes before cloning your new project.
**This is an Advanced, 300 Level Workshop.**

---
## Audience

<!-- DELETE THE LINES ABOVE THIS AND WRITE YOUR PROJECT README BELOW -- PLACEHOLDER SECTIONS HAVE BEEN INCLUDED FOR YOUR CONVENIENCE -->
This Workshop is meant for Cloud and Application Architects, Modern Application Developers, DevOps, Platform Ops, and SRE engineers working with NGINX, Azure, Docker, Kubernetes and Ingress Controllers, to learn and understand how NGINX for Azure works - how it is configured, deployed, monitored and managed. Using various Azure Resources like VMs, containers, AKS Clusters, and Azure networking, you will deploy real applications for external access using Nginx for Azure.

[![Project Status: Concept – Minimal or no implementation has been done yet, or the repository is only intended to be a limited example, demo, or proof-of-concept.](https://www.repostatus.org/badges/latest/concept.svg)](https://www.repostatus.org/#concept)
[![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/nginxinc/nginx-azure-workshops/badge)](https://securityscorecards.dev/viewer/?uri=github.com/nginxinc/nginx-azure-workshops)
[![Community Support](https://badgen.net/badge/support/community/cyan?icon=awesome)](https://github.com/nginxinc/nginx-azure-workshops/blob/main/SUPPORT.md) <!-- [![Commercial Support](https://badgen.net/badge/support/commercial/cyan?icon=awesome)](<Insert URL>) -->
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](https://github.com/nginxinc/nginx-azure-workshops/main/CODE_OF_CONDUCT.md)
`The Student taking this Advanced Workshop must have intermediate skills and knowledge with the following:`

- Azure Cloud, Portal and Azure CLI
- NGINX Webserver, Reverse Proxy, Load Balancing
- NGINX Ingress Controller
- Kubernetes Administration
- Redis In Memory Cache and Redis Tools
- TCP, HTTP/S, DNS, Redis protocols and traffic
- Chrome or browser diagnostic tools
- Linux OS commands and tools
- Container / Docker administration
- Visual Studio Code

You should be proficient with the following technologies and concepts.

- Nginx Webserver and Reverse Proxy
- Nginx Ingress Controller
- Kubernetes; nodes, pods, deployments, services, ingress, nodeport
- Azure Cloud; subscriptions, networking, VMs, AKS Clusters
- Various Desktop tools; Visual Studio, Linux, Terminal, Chrome

<br/>

# nginx_azure_workshops
## Knowledge and Skills Requirements

## Requirements
<br/>

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam elit turpis, varius et arcu elementum, viverra rhoncus sem. Aliquam nec sodales magna, et egestas enim. Mauris lobortis ultrices euismod. Pellentesque in arcu lacus. Mauris cursus laoreet nulla, ac vehicula est. Vestibulum eu mauris quis lorem consectetur aliquam ac nec quam. Vestibulum commodo pharetra mi, at bibendum neque faucibus ut. Mauris et tortor sed sem consectetur eleifend ut non magna. Praesent feugiat placerat nibh, varius viverra orci bibendum sed. Vestibulum dapibus ex ut pulvinar facilisis. Quisque sodales enim et augue tempor mattis. Suspendisse finibus congue felis, ac blandit ligula. Praesent condimentum ultrices odio quis semper. Nunc ultrices, nibh quis mattis pellentesque, elit nulla bibendum felis, quis dapibus erat turpis ac urna.
NGINXaaS for Azure | Hands-On Labs
:-------------------------:|:-------------------------:
![](labs/media/nginx-azure-icon.png) | ![](labs/media/developer-seated.svg)

<br/>

To meet the Prerequisite skills requirement, there are other Workshops from Nginx and Azure Learning to help you prepare. The student must have completed the previous two Nginx Workshops, prior to taking this workshop. (Or have equivalent knowledge).

- Nginx Basics Workshop - 101 (https://github.com/nginxinc/nginx-basics-workshops/tree/master/labs)
- Nginx Plus Ingress Workshop - 201 (https://github.com/nginxinc/nginx-ingress-workshops/tree/main/Plus/labs)
- Azure Portal and AzureCLI training from Microsoft Learn (https://learn.microsoft.com/en-us/training/azure/)

See [Lab0 Readme](/labs/lab0/readme.md) for the Hardware/Software and Skills Prerequisites for taking this Workshop and completing the Lab Exercises.

<br/>

## Getting Started

Duis sit amet sapien vel velit ornare vulputate. Nulla rutrum euismod risus ac efficitur. Curabitur in sagittis elit, a semper leo. Suspendisse malesuada aliquam velit, eu suscipit lorem vehicula at. Proin turpis lacus, semper in placerat in, accumsan non ipsum. Cras euismod, elit eget pretium laoreet, tortor nulla finibus tortor, nec hendrerit elit turpis ut eros. Quisque congue nisi id mauris molestie, eu condimentum dolor rutrum. Nullam eleifend elit ac lobortis tristique. Pellentesque nec tellus non mauris aliquet commodo a eu elit. Ut at feugiat metus, at tristique mauris. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae;
Review the Github Repo content for the Nginx Basics and Nginx Plus Ingress Workshops. If you have taken these Workshops, and understand the content, you can successfully complete the Lab exercises in this Nginx for Azure Workshop. It is HIGHLY recommended that you complete the 101 and 201 Workshops prior.

It is HIGHLY recommended that you complete Azure Training from http://learn.microsoft.com, so you are familiar with Azure Portal, menus, and various resources and components.

It will take approximately 4 hours to complete the Nginx for Azure Workshop.

<br/>

## How to Use

Maecenas at vehicula justo. Suspendisse posuere elementum elit vel posuere. Etiam quis pulvinar massa. Integer tempor semper risus, vitae maximus eros ullamcorper vitae. In egestas, ex vitae gravida sodales, ipsum dolor varius est, et cursus lorem dui a mi. Morbi faucibus ut nisi id faucibus. Sed quis ullamcorper ex. In et dolor id nunc interdum suscipit.
The content and lab exercises are presented in a sequence as you build and add additional Nginx and Azure features and functionality as you progress. It is essential that the Lab Exercises are completed in the order provided. This content provided is for example only, is not for production workloads. The user of this information assumes all risks.

- Click [LabGuide](/labs/LabGuide.md) to begin the Lab Exercises.
- Click [Lab0 Readme](/labs/lab0/readme.md) to review the Lab0 Prerequisites - "Know before you Go".

<br/>

## Contributing

Expand Down
4 changes: 2 additions & 2 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

## Latest Versions

We advise users to run or update to the most recent release of this project. Older versions of this project may not have all enhancements and/or bug fixes applied to them.
We advise users to run the most recent release of the nginx_azure_workshops. Older versions of the nginx_azure_workshops may not have all enhancements and/or bug fixes applied to them.

## Reporting a Vulnerability

The F5 Security Incident Response Team (F5 SIRT) has an email alias that makes it easy to report potential security vulnerabilities.

- If you’re an F5 customer with an active support contract, please contact [F5 Technical Support](https://www.f5.com/services/support).
- If you aren’t an F5 customer, please report any potential or current instances of security vulnerabilities with any F5 product to the F5 Security Incident Response Team at [email protected]
- If you aren’t an F5 customer, please report any potential or current instances of security vulnerabilities with any F5 product to the F5 Security Incident Response Team at [email protected].

For more information visit [https://www.f5.com/services/support/report-a-vulnerability](https://www.f5.com/services/support/report-a-vulnerability)
36 changes: 29 additions & 7 deletions SUPPORT.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,34 +4,56 @@

We use GitHub for tracking bugs and feature requests related to this project.

Don't know how something in this project works? Curious if this project can achieve your desired functionality? Please open an issue on GitHub with the label `question`.
Don't know how something in the nginx_azure_workshops works? Curious if the nginx_azure_workshops can achieve your desired functionality? Please open an issue on GitHub with the label `question`.

<br/>

## NGINX Specific Questions and/or Issues

This isn't the right place to get support for NGINX specific questions, but the following resources are available below. Thanks for your understanding!

### Community Slack
<br/>

We have a community [Slack](https://nginxcommunity.slack.com/)!
## F5 Support

If you are not a member, click [here](https://community.nginx.org/joinslack) to sign up (and let us know if the link does not seem to be working!)
If you’re an F5 customer with NGINX Plus and an active support contract, please contact [F5 Technical Support](https://www.f5.com/services/support).

Once you join, check out the `#beginner-questions` and `nginx-users` channels :)
<br/>

### Documentation
## Documentation

For a comprehensive list of all NGINX directives, check out <https://nginx.org>.
For a comprehensive list of all NGINX directives, check out <http://nginx.org/en/docs/dirindex.html>.

For a comprehensive list of all NGINX variables, check out <http://nginx.org/en/docs/varindex.html>.

For a comprehensive list of admin and deployment guides for NGINX Plus, check out <https://docs.nginx.com/nginx/admin-guide/>.

For a comprehensive list of admin and deployment guides for all NGINX products, check out <https://docs.nginx.com>.

</br>

### Mailing List

Want to get in touch with the NGINX development team directly? Try using the relevant mailing list found at <https://mailman.nginx.org/mailman3/lists/>!

<br/>

## Contributing

Please see the [contributing guide](https://github.com/nginxinc/nginx-azure-workshops/blob/main/CONTRIBUTING.md) for guidelines on how to best contribute to this project.

<br/>

## Commercial Support

Commercial support for this project may be available. Please get in touch with [NGINX sales](https://www.nginx.com/contact-sales/) or check your contract details for more info!

<br/>

### Community Slack

We have a community [Slack](https://nginxcommunity.slack.com/)!

If you are not a member, click [here](https://community.nginx.org/joinslack) to sign up (and let us know if the link does not seem to be working!)

Once you join, check out the `#beginner-questions` and `nginx-users` channels :)
Loading

0 comments on commit 2ae9461

Please sign in to comment.