diff options
Diffstat (limited to 'ctrack.yaml')
-rw-r--r-- | ctrack.yaml | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/ctrack.yaml b/ctrack.yaml new file mode 100644 index 0000000..526a708 --- /dev/null +++ b/ctrack.yaml @@ -0,0 +1,117 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License + +# This file configures the ctrack application . The frontend serves +# public web traffic. + +# The bookshelf frontend replication controller ensures that at least 3 +# instances of the bookshelf app are running on the cluster. +# For more info about Pods see: +# https://cloud.google.com/container-engine/docs/pods/ +# For more info about Deployments: +# https://kubernetes.io/docs/user-guide/deployments/ + +# [START kubernetes_deployment] +apiVersion: apps/v1 +kind: Deployment +metadata: + name: ctrack + labels: + app: ctrack +spec: + replicas: 3 + selector: + matchLabels: + app: ctrack + template: + metadata: + labels: + app: ctrack + spec: + containers: + - name: ctrack-app + # Replace with your project ID or use `make template` + image: gcr.io/ctrack-291710/ctrack + # This setting makes nodes pull the docker image every time before + # starting the pod. This is useful when debugging, but should be turned + # off in production. + imagePullPolicy: Always + env: + # [START cloudsql_secrets] + - name: DATABASE_USER + valueFrom: + secretKeyRef: + name: cloudsql + key: ctrack + - name: DATABASE_PASSWORD + valueFrom: + secretKeyRef: + name: cloudsql + key: password + # [END cloudsql_secrets] + ports: + - containerPort: 8080 + + # [START proxy_container] + - image: gcr.io/cloudsql-docker/gce-proxy:1.16 + name: cloudsql-proxy + command: ["/cloud_sql_proxy", "--dir=/cloudsql", + "-instances=ctrack-291710:europe-west2:ctrack=tcp:5432", + "-credential_file=/secrets/cloudsql/credentials.json"] + volumeMounts: + - name: cloudsql-oauth-credentials + mountPath: /secrets/cloudsql + readOnly: true + - name: ssl-certs + mountPath: /etc/ssl/certs + - name: cloudsql + mountPath: /cloudsql + # [END proxy_container] + # [START volumes] + volumes: + - name: cloudsql-oauth-credentials + secret: + secretName: cloudsql-oauth-credentials + - name: ssl-certs + hostPath: + path: /etc/ssl/certs + - name: cloudsql + emptyDir: + # [END volumes] +# [END kubernetes_deployment] + +--- + +# [START service] +# The ctrack service provides a load-balancing proxy over the ctrack app +# pods. By specifying the type as a 'LoadBalancer', Container Engine will +# create an external HTTP load balancer. +# For more information about Services see: +# https://cloud.google.com/container-engine/docs/services/ +# For more information about external HTTP load balancing see: +# https://cloud.google.com/container-engine/docs/load-balancer +apiVersion: v1 +kind: Service +metadata: + name: ctrack + labels: + app: ctrack +spec: + type: LoadBalancer + ports: + - port: 80 + targetPort: 8080 + selector: + app: ctrack +# [END service] |