/microservices-codeeducation

Developing modern and scalable applications with microservices

Primary LanguagePHP

Microservices by Code Education

CodeEducationTitle

Developing modern and scalable applications with microservices
The digital transformation begin at the developer

GitHub last commit GitHub languages count Made by Diego Clair

📝 Project

In this training we'll develop an application like Netflix, where the user will be able to create an account, to make a subscription, look for a movie and watch them.

💻 Features

We are going to develop the following microservices:

  • Authentication Single Sign On:
    Single-Sign-On

  • User Subscription:
    User-Subscription

  • Search:
    Search

  • Video Catalog:
    Video-catalog

  • Encoding videos:
    Encoding-video

Status

In development 🚧

👨‍💻 Technologies and content

  • Software Architecture 🚧

    • Introduction ✅
    • Monolitic architecture ✅
    • Microservice architecture ✅
    • Microservice communication types ✅
    • SOLID ✅
    • DDD ✅
  • Devops 🚧

    • Docker
    • GitFlow
    • CI (Continuous Integration) ✅
      • CI using Google CloudBuild ✅
    • Kubernetes
      • Kubernetes using GCP (Google Cloud Plataform)
    • CD
  • Programming languages 🕒

  • Messaging Queues 🕒

  • Databases 🕒

🚧 Extras

In this repo, you'll find the challenges that I did during the course.

  • Repo challenge 01 - Docker 🐳✅:

    • Challenges:
      • Publishing a Laravel image to dockerhub
      • Using Dockerize template to define environment variables for nginx image in docker-compose.yaml
  • Repo challenge 02 - Docker 🐳✅:

    • Challenges:
      • Publishing a Golang image to dockerhub that print the text: 'Code.education Rocks!'
  • (CI) Continuous Integration challenge:

    • Challenges:
      • Repo: Create a docker-compose image and push to GCP Container Register.
      • Implement CI process at Laravel Repo to each pull request created and to any branch.
  • Repo challenge 03 - CI an Docker 🐳✅:

    • Challenges:
      • Create a project in Go with a function soma and add a test for it.
      • Implement the CI process that will execute the unit test, generate and push the image to GCP Container Register and with trigger with github repo to start CI process when execute any push to any branch.
  • Repo challenge 04 - Kubernetes ✅:

    • Challenge 01 Create a kubernets service with nginx image that returns the message Code.education Rocks.
    • Challenge 02 - Kubernetes with mysql, using persistent volume and secret with environment variables.
    • Challenge 03 Create a webserver that returns a bold string Code.education Rocks. with test, CI process and kubernetes.
  • Repo challenge 05 - Kubernetes hpa (Horizontal Pod Autoscaler) ✅