From 4ac4fcfba0019a1e00f9f652595d51901deb2a7e Mon Sep 17 00:00:00 2001 From: Kamran Ahmed Date: Thu, 5 Sep 2024 09:27:57 +0100 Subject: [PATCH] Update devops projects --- src/data/projects/basic-github-actions.md | 36 ------------ src/data/projects/basic-iac-with-terraform.md | 42 -------------- src/data/projects/docker-webserver.md | 39 ------------- src/data/projects/local-monitoring-stack.md | 57 ------------------- 4 files changed, 174 deletions(-) delete mode 100644 src/data/projects/basic-github-actions.md delete mode 100644 src/data/projects/basic-iac-with-terraform.md delete mode 100644 src/data/projects/docker-webserver.md delete mode 100644 src/data/projects/local-monitoring-stack.md diff --git a/src/data/projects/basic-github-actions.md b/src/data/projects/basic-github-actions.md deleted file mode 100644 index f7385a9e6..000000000 --- a/src/data/projects/basic-github-actions.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: 'Github Actions Workflow' -description: 'Write GitHub Actions workflow to deploy a simple GitHub Pages site.' -isNew: true -sort: 3 -difficulty: 'beginner' -nature: 'CI/CD' -skills: - - 'devops' - - 'github actions' - - 'ci/cd' -seo: - title: 'Github Actions Workflow' - description: 'Write GitHub Actions workflow to deploy a simple GitHub Pages site.' - keywords: - - 'basic ci/cd' - - 'devops' - - 'devops projects' -roadmapIds: - - 'git-github' - - 'devops' ---- - -In this project, you will write a basic HTML file and setup a GitHub Actions workflow to test, build & deploy it to GitHub Pages. - -## Requirements - -- Create a simple HTML file (the content is up to you) -- Create a GitHub Actions workflow that will test, build & deploy the website to [GitHub Pages](https://pages.github.com/). -- Failures in the workflow should be clearly indicated and failures will halt the workflow -- The workflow should be in the `.github/workflows` directory -- The workflow file should be named `main.yml` - -
- -If you are looking to build a more advanced version of this project, you can either create a more advanced Astro website or you can build a more advanced GitHub Actions workflow. diff --git a/src/data/projects/basic-iac-with-terraform.md b/src/data/projects/basic-iac-with-terraform.md deleted file mode 100644 index fd3988d7e..000000000 --- a/src/data/projects/basic-iac-with-terraform.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -title: 'Basic Infrastructure as Code with Terraform' -description: 'Provision a simple cloud infrastructure using Terraform' -isNew: false -sort: 4 -difficulty: 'beginner' -nature: 'CLI' -skills: - - 'terraform' - - 'devops' - - 'iac' - - 'cloud' -seo: - title: 'Basic Infrastructure as Code with Terraform' - description: 'Learn to provision cloud resources using Terraform' - keywords: - - 'terraform' - - 'infrastructure as code' - - 'cloud provisioning' - - 'devops' -roadmapIds: - - 'devops' - - 'terraform' - - 'aws' ---- - -In this project, you will use Terraform to provision a virtual machine in AWS. - -## Requirements - -- Install Terraform on your local machine. -- Set up an account with a AWS and obtain necessary credentials. -- Create a `main.tf` file in the root directory of your project. -- Write Terraform configuration to provision a basic resource (e.g., an EC2 instance on AWS or a VM on Azure). -- Use Terraform commands to initialize, plan, apply, and destroy your infrastructure. -- The provisioned resource should be accessible and verifiable in your cloud provider's console. - -You can learn more about Terraform basics [here](https://learn.hashicorp.com/terraform). - -
- -For a more advanced version of this project, consider adding multiple resources, using variables and outputs, or implementing a modular structure for your Terraform configuration. \ No newline at end of file diff --git a/src/data/projects/docker-webserver.md b/src/data/projects/docker-webserver.md deleted file mode 100644 index dcf6b53d0..000000000 --- a/src/data/projects/docker-webserver.md +++ /dev/null @@ -1,39 +0,0 @@ ---- -title: 'Docker Web Server' -description: 'Create a Web Server using Docker & NGINX' -isNew: false -sort: 3 -difficulty: 'beginner' -nature: 'CLI' -skills: - - 'docker' - - 'devops' - - 'nginx' - - 'web' -seo: - title: 'Docker Web Server' - description: 'Create a Web Server using Docker & NGINX' - keywords: - - 'docker web server' - - 'docker' - - 'system administration' - - 'web server' -roadmapIds: - - 'devops' - - 'docker' ---- - -In this project, you will create an NGINX web server that will serve a simple HTML page using Docker. - -## Requirements - -- The Dockerfile should be named `Dockerfile`. -- The Dockerfile should be in the root directory of the project. -- The build process will add a local HTML file to the container, which will be accessible to NGINX. -- The simple HTML page will be accessible to you from `localhost:8080` - -You can learn more about writing a Dockerfile [here](https://docs.docker.com/engine/reference/builder/). - -
- -If you are looking to build a more advanced version of this project, you can consider using the `alpine:latest` image and setting up NGINX yourself rather than using the official NGINX image. diff --git a/src/data/projects/local-monitoring-stack.md b/src/data/projects/local-monitoring-stack.md deleted file mode 100644 index a9913ad0e..000000000 --- a/src/data/projects/local-monitoring-stack.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: 'Local Monitoring System with Docker' -description: 'Set up a local monitoring system using Docker with Grafana and Prometheus' -isNew: false -sort: 1 -difficulty: 'intermediate' -nature: 'CLI' -skills: - - 'docker' - - 'devops' - - 'monitoring' - - 'grafana' - - 'prometheus' -seo: - title: 'Local Monitoring System with Docker, Grafana, and Prometheus' - description: 'Learn to set up a local monitoring system using Docker with Grafana and Prometheus' - keywords: - - 'docker' - - 'monitoring' - - 'grafana' - - 'prometheus' - - 'devops' -roadmapIds: - - 'devops' - - 'docker' ---- - -In this project, you will set up a local monitoring system using Docker, Grafana, and Prometheus. This setup will allow you to collect metrics and visualize them in a dashboard. - -## Requirements - -- Docker and Docker Compose installed on your local machine. -- Create a `docker-compose.yml` file in the root directory of your project. -- Set up Prometheus as the metrics collection system. -- Configure Grafana as the visualization tool. -- Create a simple dashboard in Grafana to display system metrics. -- Add a sample application to monitor, such as a simple web server. - -Your `docker-compose.yml` file should define services for: -1. Prometheus -2. Grafana -3. A sample application to monitor - -## Steps - -1. Create the `docker-compose.yml` file with services for Prometheus and Grafana. -2. Configure Prometheus to scrape metrics (you'll need a `prometheus.yml` configuration file). -3. Set up Grafana to use Prometheus as a data source. -4. Create a simple dashboard in Grafana to display metrics. -5. Use `docker-compose up` to start your monitoring stack. -6. Access Grafana through your web browser and verify that metrics are being collected and displayed. - -You can learn more about Prometheus [here](https://prometheus.io/docs/introduction/overview/) and Grafana [here](https://grafana.com/docs/grafana/latest/). - -
- -For a more advanced version of this project, consider adding alerting rules in Prometheus, setting up additional exporters to collect more diverse metrics, or monitoring a multi-container application. \ No newline at end of file