Giter Site home page Giter Site logo

webmakaka / microservices-with-node-js-and-react Goto Github PK

View Code? Open in Web Editor NEW
214.0 4.0 114.0 58.79 MB

[Stephen Grider] Microservices with Node JS and React [ENG, 2020]

HTML 0.20% JavaScript 12.93% Dockerfile 0.93% TypeScript 85.94%
nodejs kubernetes minikube docker typescript microservices reactjs curl mongodb mongoose

microservices-with-node-js-and-react's Introduction

[Stephen Grider] Microservices with Node JS and React [ENG, 2020]

Build, deploy, and scale an E-Commerce app using Microservices built with Node, React, Docker and Kubernetes




How to run apps

I am working in ubuntu linux 18.04.

Minikube, Kubectl, Docker, Skaffold should be installed.


Skaffold installation

$ curl -Lo skaffold https://storage.googleapis.com/skaffold/releases/latest/skaffold-linux-amd64

$ chmod +x skaffold
$ sudo mv skaffold /usr/local/bin

Run minikube

$ {
minikube --profile my-profile config set memory 8192
minikube --profile my-profile config set cpus 4

// minikube --profile my-profile config set vm-driver virtualbox
minikube --profile my-profile config set vm-driver docker

minikube --profile my-profile config set kubernetes-version v1.18.2
minikube start --profile my-profile
}

// Enable ingress
$ minikube addons --profile my-profile enable ingress

$ minikube --profile my-profile ip
172.17.0.2

$ sudo vi /etc/hosts
#---------------------------------------------------------------------
# Minikube
#---------------------------------------------------------------------
172.17.0.2 posts.com
172.17.0.2 ticketing.dev

How to run the final app1


$ 04_Orchestrating_Collections_of_Services_with_Kubernetes
$ cd skaffold

$ docker login

Need to update my docker image name webmakaka/grider-ms-app1*** to your in scripts from skaffold and k8s folders.

$ skaffold dev

$ kubectl get pods
NAME                              READY   STATUS    RESTARTS   AGE
client-depl-99b7fcdcb-jhttp       1/1     Running   0          3m22s
comments-depl-69578db79c-jzdnh    1/1     Running   0          3m22s
event-bus-depl-7c5b75b7f4-m5qw6   1/1     Running   0          3m22s
moderation-depl-d7b49bfbc-cgl2l   1/1     Running   0          3m22s
posts-depl-78647cffd4-7gtzx       1/1     Running   0          3m22s
query-depl-656f9b6b58-bv7g7       1/1     Running   0          3m22s

browser --> posts.com


How to run the final app2


$ kubectl create secret generic jwt-secret --from-literal=JWT_KEY=asdf

// <STRIPE_SECRET_KEY> from stripe.com
$ kubectl create secret generic stripe-secret --from-literal=STRIPE_KEY=<STRIPE_SECRET_KEY>

$ cd 22_Back_to_the_Client
$ cd skaffold

$ docker login

Need to update my docker image name webmakaka/grider-ms-app2*** to your in scripts from skaffold and k8s folders.

$ skaffold dev

$ kubectl get pods
NAME                                           READY   STATUS    RESTARTS   AGE
auth-deployment-57d779fd9-48s9v                1/1     Running   0          24s
auth-mongo-deployment-579c6dbd8f-69jbv         1/1     Running   0          23s
client-deployment-f5cfc5b8d-k2lxp              1/1     Running   0          23s
expiration-deployment-6bb67856b4-jkkbl         1/1     Running   0          23s
expiration-redis-deployment-5b58b869fd-hmq5f   1/1     Running   0          23s
nats-deployment-76479997ff-lpss8               1/1     Running   0          23s
orders-deployment-5c68dff5c9-dq6hl             1/1     Running   0          23s
orders-mongo-deployment-6896c8b9-42vpd         1/1     Running   0          23s
payments-deployment-68d4c7f4ff-nfsxb           1/1     Running   0          23s
payments-mongo-deployment-c89cb4fc7-4ggn7      1/1     Running   0          23s
tickets-deployment-7b746fff9-tvhzw             1/1     Running   0          23s
tickets-mongo-deployment-54f456bd95-hv9fb      1/1     Running   0          22s

chrome browser --> https://ticketing.dev/


type: thisisunsafe in the browser window with security warning.


Expected result:

Application


Delete minikube with project

$ minikube --profile my-profile stop && minikube --profile my-profile delete


Development step by step


App1

03. Running Services with Docker (Docker Basics. Nothing Interesting)


App2

06. Leveraging a Cloud Environment for Development (Optional Section, Skipped)




Marley

Any questions in english: Telegram Chat
Любые вопросы на русском: Телеграм чат

microservices-with-node-js-and-react's People

Contributors

imgbotapp avatar webmakaka avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.