daml/ledger/sandbox/kubernetes.yaml
Gary Verhaegen 878429e3bf
update copyright notices to 2020 (#3939)
copyright update 2020

* update template
* run script: `dade-copyright-headers update .`
* update script
* manual adjustments
* exclude frozen proto files from further header checks (by adding NO_AUTO_COPYRIGHT files)
2020-01-02 21:21:13 +01:00

132 lines
2.6 KiB
YAML

# Copyright (c) 2020 The DAML Authors. All rights reserved.
# SPDX-License-Identifier: Apache-2.0
# This is an example configuration file that demonstrates how the Sandbox can be
# naively deployed with PostgreSQL in a Kubernetes cluster.
#
# It is not intended to be used in a production environment.
#
# Operational requirements that are not covered here include, but are not
# limited to:
#
# * scaling,
# * server security,
# * participant authentication,
# * participant authorization,
# * database backups,
# * database recovery,
# * and lots more.
---
apiVersion: v1
kind: Service
metadata:
name: sandbox
spec:
type: LoadBalancer
selector:
app: sandbox
ports:
- name: ledger-api
port: 6865
---
kind: Deployment
apiVersion: apps/v1
metadata:
name: sandbox
labels:
app: sandbox
spec:
replicas: 1
selector:
matchLabels:
app: sandbox
template:
metadata:
labels:
app: sandbox
spec:
containers:
- name: sandbox
image: bazel/ledger/sandbox:sandbox-image
args:
- --ledgerid=kubernetes-demo
- --port=6865
- --eager-package-loading
- --sql-backend-jdbcurl=jdbc:postgresql://db:5432/sandbox?user=sandbox
ports:
- name: ledger-api
containerPort: 6865
startupProbe:
tcpSocket:
port: ledger-api
failureThreshold: 10
periodSeconds: 10
livenessProbe:
tcpSocket:
port: ledger-api
periodSeconds: 10
readinessProbe:
exec:
command:
- grpc-health-probe
- -addr=:6865
periodSeconds: 10
---
apiVersion: v1
kind: Service
metadata:
name: db
labels:
app: db
spec:
selector:
app: db
ports:
- name: postgresql
port: 5432
---
kind: StatefulSet
apiVersion: apps/v1
metadata:
name: db
spec:
selector:
matchLabels:
app: db
serviceName: db
replicas: 1
template:
metadata:
labels:
app: db
spec:
containers:
- name: postgresql
image: postgres
env:
- name: POSTGRES_USER
value: sandbox
ports:
- name: postgresql
containerPort: 5432
volumeMounts:
- name: data
mountPath: /var/lib/postgresql/data
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi