tvl-depot/infra/kubernetes/nginx/nginx.yaml
Vincent Ambo 9653bdcf69 fix(infra/k8s): Workaround for nginx crash on pidfile write
Newer versions of nginx apparently hard-crash if they can't write a
PID file in the current directory.

To work around this, some writeable scratch space is created for the
nginx daemon to write its PID to.
2019-12-20 16:07:31 +00:00

60 lines
1.3 KiB
YAML

# Deploy an nginx instance which serves ... redirects.
---
apiVersion: v1
kind: ConfigMap
metadata:
name: nginx-conf
data:
nginx.conf: {{ insertFile "nginx.conf" | toJson }}
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
labels:
app: nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
config: {{ insertFile "nginx.conf" | sha1sum }}
spec:
containers:
- name: tazblog
image: nixery.local/shell/third_party.nginx:{{ .version }}
command: ["/bin/bash", "-c"]
args:
- |
cd /run
echo 'nogroup:x:30000:nobody' >> /etc/group
echo 'nobody:x:30000:30000:nobody:/tmp:/bin/bash' >> /etc/passwd
exec nginx -c /etc/nginx/nginx.conf
volumeMounts:
- name: nginx-conf
mountPath: /etc/nginx
- name: nginx-rundir
mountPath: /run
volumes:
- name: nginx-conf
configMap:
name: nginx-conf
- name: nginx-rundir
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: nginx
spec:
type: NodePort
selector:
app: nginx
ports:
- protocol: TCP
port: 6756
targetPort: 80