Skip to content

Instantly share code, notes, and snippets.

@chadmcrowell
Created October 14, 2023 14:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chadmcrowell/40f17d30733ec1fbde16b7bb77cb228e to your computer and use it in GitHub Desktop.
Save chadmcrowell/40f17d30733ec1fbde16b7bb77cb228e to your computer and use it in GitHub Desktop.
Online Boutique App
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: email-service
name: email-service
spec:
replicas: 1
selector:
matchLabels:
app: email-service
strategy: {}
template:
metadata:
labels:
app: email-service
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/emailservice:v0.8.0
name: service
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: email-service
name: email-service
spec:
ports:
- port: 5000
protocol: TCP
targetPort: 8080
selector:
app: email-service
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: recommendationservice
name: recommendationservice
spec:
replicas: 1
selector:
matchLabels:
app: recommendationservice
strategy: {}
template:
metadata:
labels:
app: recommendationservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/recommendationservice:v0.8.0
name: service
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: recommendationservice
name: recommendationservice
spec:
ports:
- name: "8080"
port: 8080
protocol: TCP
targetPort: 8080
selector:
app: recommendationservice
type: ClusterIP
status:
loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: productcatalogservice
name: productcatalogservice
spec:
replicas: 1
selector:
matchLabels:
app: productcatalogservice
strategy: {}
template:
metadata:
labels:
app: productcatalogservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/productcatalogservice:v0.8.0
name: service
ports:
- containerPort: 3550
env:
- name: PORT
value: "3550"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: productcatalogservice
name: productcatalogservice
spec:
ports:
- name: "3550"
port: 3550
protocol: TCP
targetPort: 3550
selector:
app: productcatalogservice
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: paymentservice
name: paymentservice
spec:
replicas: 1
selector:
matchLabels:
app: paymentservice
strategy: {}
template:
metadata:
labels:
app: paymentservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/paymentservice:v0.8.0
name: service
ports:
- containerPort: 50051
env:
- name: PORT
value: "50051"
- name: DISABLE_PROFILER
value: "1"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: paymentservice
name: paymentservice
spec:
ports:
- name: "50051"
port: 50051
protocol: TCP
targetPort: 50051
selector:
app: paymentservice
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: currencyservice
name: currencyservice
spec:
replicas: 1
selector:
matchLabels:
app: currencyservice
strategy: {}
template:
metadata:
labels:
app: currencyservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/currencyservice:v0.8.0
name: service
ports:
- containerPort: 7000
env:
- name: PORT
value: "7000"
- name: DISABLE_PROFILER
value: "1"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: currencyservice
name: currencyservice
spec:
ports:
- name: "7000"
port: 7000
protocol: TCP
targetPort: 7000
selector:
app: currencyservice
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: shippingservice
name: shippingservice
spec:
replicas: 1
selector:
matchLabels:
app: shippingservice
strategy: {}
template:
metadata:
labels:
app: shippingservice
spec:
containers:
- image: nginx
name: nginx
ports:
- containerPort: 50051
---
apiVersion: v1
kind: Service
metadata:
labels:
app: shippingservice
name: shippingservice
spec:
ports:
- name: "50051"
port: 50051
protocol: TCP
targetPort: 50051
selector:
app: shippingservice
type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: adservice
name: adservice
spec:
replicas: 1
selector:
matchLabels:
app: adservice
strategy: {}
template:
metadata:
labels:
app: adservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/adservice:v0.8.0
name: service
ports:
- containerPort: 9555
env:
- name: "PORT"
value: "9555"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: adservice
name: adservice
spec:
ports:
- name: "9555"
port: 9555
protocol: TCP
targetPort: 9555
selector:
app: adservice
type: ClusterIP
status:
loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: cartservice
name: cartservice
spec:
replicas: 1
selector:
matchLabels:
app: cartservice
strategy: {}
template:
metadata:
labels:
app: cartservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/cartservice:v0.8.0
name: service
ports:
- containerPort: 7070
env:
- name: "PORT"
value: "7070"
- name: "REDIS_ADDR"
value: "redis-cart:6379"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: cartservice
name: cartservice
spec:
ports:
- name: "7070"
port: 7070
protocol: TCP
targetPort: 7070
selector:
app: cartservice
type: ClusterIP
status:
loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: redis-cart
name: redis-cart
spec:
replicas: 1
selector:
matchLabels:
app: redis-cart
strategy: {}
template:
metadata:
labels:
app: redis-cart
spec:
containers:
- image: redis:alpine
name: redis
ports:
- containerPort: 6379
volumeMounts:
- name: redis-data
mountPath: /data
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
labels:
app: redis-cart
name: redis-cart
spec:
ports:
- name: "6379"
port: 6379
protocol: TCP
targetPort: 6379
selector:
app: redis-cart
type: ClusterIP
status:
loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: checkoutservice
name: checkoutservice
spec:
replicas: 1
selector:
matchLabels:
app: checkoutservice
strategy: {}
template:
metadata:
labels:
app: checkoutservice
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/checkoutservice:v0.8.0
name: nginx
ports:
- containerPort: 5050
env:
- name: PORT
value: "5050"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: PAYMENT_SERVICE_ADDR
value: "paymentservice:50051"
- name: EMAIL_SERVICE_ADDR
value: "emailservice:5000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: checkoutservice
name: checkoutservice
spec:
ports:
- name: "5050"
port: 5050
protocol: TCP
targetPort: 5050
selector:
app: checkoutservice
type: ClusterIP
status:
loadBalancer: {}
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: frontend
name: frontend
spec:
replicas: 1
selector:
matchLabels:
app: frontend
strategy: {}
template:
metadata:
labels:
app: frontend
spec:
containers:
- image: gcr.io/google-samples/microservices-demo/frontend:v0.8.0
name: service
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: PAYMENT_SERVICE_ADDR
value: "paymentservice:50051"
- name: EMAIL_SERVICE_ADDR
value: "emailservice:5000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
- name: RECOMMENDATION_SERVICE_ADDR
value: "recommendationservice:8080"
---
apiVersion: v1
kind: Service
metadata:
labels:
app: frontend
name: frontend
spec:
ports:
- name: "8080"
port: 80
protocol: TCP
targetPort: 8080
nodePort: 30007
selector:
app: frontend
type: NodePort
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment