From 4adf832a641d755c2029d14a488bd96ae9abbd49 Mon Sep 17 00:00:00 2001 From: Pablo Solar VilariƱo <psolarvi@redhat.com> Date: Thu, 04 Jun 2020 17:39:11 +0200 Subject: [PATCH] Added frontend deployment and small Readme --- adopt-a-pup/Readme.MD | 27 +++++++++++++ adopt-a-pup/kubefiles/adoption-service.yaml | 1 adopt-a-pup/kubefiles/email-service.yaml | 0 adopt-a-pup/kubefiles/shelter-service.yaml | 1 adopt-a-pup/kubefiles/animal-service.yaml | 1 adopt-a-pup/kubefiles/notification-service.yaml | 1 adopt-a-pup/kubefiles/frontend-service.yaml | 73 ++++++++++++++++++++++++++++++++++++ 7 files changed, 104 insertions(+), 0 deletions(-) diff --git a/adopt-a-pup/Readme.MD b/adopt-a-pup/Readme.MD index 6fc4378..8d45a05 100755 --- a/adopt-a-pup/Readme.MD +++ b/adopt-a-pup/Readme.MD @@ -1,3 +1,30 @@ +# Adopt a Pup Application + +## Deploying the application in Red Hat OpenShift +Create a project. +``` +oc new-project adopt-a-pup +``` + +Deploy the MongoDB container +``` +sh scripts/deploy-mongo.sh +``` + +Populate the MongoDB database +``` +sh scripts/populate-mongo.sh +``` + +Deploy the required services. +``` +oc apply -f kubefiles/adoption-service.yaml +oc apply -f kubefiles/animal-service.yaml +oc apply -f kubefiles/notification-service.yaml +oc apply -f kubefiles/shelter-service.yaml +oc apply -f kubefiles/frontend-service.yaml +``` +----- The `oc` commands in this script can be run to create the adopt-a-pup application. This will deploy the backend services including adoption, shelter, animal, and notification services. It will also build a fake smtp service which can be used to test email delivery. # Deploy the microservices. Start with a clean project. diff --git a/adopt-a-pup/kubefiles/adoption-service.yaml b/adopt-a-pup/kubefiles/adoption-service.yaml index ad93e6d..8a9ee91 100644 --- a/adopt-a-pup/kubefiles/adoption-service.yaml +++ b/adopt-a-pup/kubefiles/adoption-service.yaml @@ -17,6 +17,7 @@ containers: - name: adoption-service image: quay.io/psolarvi/ossm-adoption-service:1.0 + imagePullPolicy: Always ports: - containerPort: 8080 --- diff --git a/adopt-a-pup/kubefiles/animal-service.yaml b/adopt-a-pup/kubefiles/animal-service.yaml index 60a8407..09cc957 100644 --- a/adopt-a-pup/kubefiles/animal-service.yaml +++ b/adopt-a-pup/kubefiles/animal-service.yaml @@ -17,6 +17,7 @@ containers: - name: animal-service image: quay.io/psolarvi/ossm-animal-service:1.0 + imagePullPolicy: Always ports: - containerPort: 8080 --- diff --git a/adopt-a-pup/kubefiles/email-service.yaml b/adopt-a-pup/kubefiles/email-service.yaml new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/adopt-a-pup/kubefiles/email-service.yaml diff --git a/adopt-a-pup/kubefiles/frontend-service.yaml b/adopt-a-pup/kubefiles/frontend-service.yaml new file mode 100644 index 0000000..09f6ae1 --- /dev/null +++ b/adopt-a-pup/kubefiles/frontend-service.yaml @@ -0,0 +1,73 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: frontend-service +spec: + selector: + matchLabels: + app: frontend-service + replicas: 1 + template: + metadata: + labels: + app: frontend-service + annotations: + sidecar.istio.io/inject: "true" + spec: + containers: + - name: frontend-service + image: quay.io/redhattraining/ossm-adopt-a-pup-webapp:1.0 + imagePullPolicy: Always + ports: + - containerPort: 8080 +--- +apiVersion: v1 +kind: Service +metadata: + labels: + app: frontend-service + name: frontend-service +spec: + ports: + - port: 3000 + protocol: TCP + targetPort: 8080 + selector: + app: frontend-service +--- +apiVersion: networking.istio.io/v1alpha3 +kind: Gateway +metadata: + name: frontend-service-gw +spec: + selector: + istio: ingressgateway + servers: + - port: + number: 80 + name: http + protocol: HTTP + hosts: + - "*" +--- +apiVersion: networking.istio.io/v1alpha3 +kind: VirtualService +metadata: + name: frontend-service-vs +spec: + hosts: + - "*" + gateways: + - frontend-service-gw + http: + - match: + - uri: + prefix: /frontend + rewrite: + uri: /frontend + route: + - destination: + host: frontend-service + port: + number: 3000 + diff --git a/adopt-a-pup/kubefiles/notification-service.yaml b/adopt-a-pup/kubefiles/notification-service.yaml index 4e448f4..7334e77 100644 --- a/adopt-a-pup/kubefiles/notification-service.yaml +++ b/adopt-a-pup/kubefiles/notification-service.yaml @@ -17,6 +17,7 @@ containers: - name: notification-service image: quay.io/psolarvi/ossm-notification-service:1.0 + imagePullPolicy: Always ports: - containerPort: 8080 --- diff --git a/adopt-a-pup/kubefiles/shelter-service.yaml b/adopt-a-pup/kubefiles/shelter-service.yaml index e0592f0..b9a9b69 100644 --- a/adopt-a-pup/kubefiles/shelter-service.yaml +++ b/adopt-a-pup/kubefiles/shelter-service.yaml @@ -17,6 +17,7 @@ containers: - name: shelter-service image: quay.io/psolarvi/ossm-shelter-service:1.0 + imagePullPolicy: Always ports: - containerPort: 8080 --- -- Gitblit v1.9.3