apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: nginx-fileserver
name: nginx-fileserver
spec:
replicas: 1
selector:
matchLabels:
app: nginx-fileserver
template:
metadata:
labels:
app: nginx-fileserver
spec:
containers:
- image: nginx:1.17.10
name: nginx
ports:
- name: web
containerPort: 80
resources:
limits:
cpu: "1"
memory: 512Mi
requests:
cpu: 100m
memory: 10Mi
volumeMounts:
- mountPath: /etc/nginx/conf.d/default.conf
name: config
subPath: conf
- mountPath: /files
name: files
volumes:
- name: config
configMap:
name: nginx-fileserver
- hostPath:
path: /data/nginx-fileserver
type: ""
name: files
---
apiVersion: v1
kind: Service
metadata:
labels:
k8s-app: nginx-fileserver
name: nginx-fileserver
spec:
ports:
- name: web
port: 80
selector:
app: nginx-fileserver
---
apiVersion: v1
data:
conf: |-
server {
listen 80;
server_name localhost;
location / {
root /files;
autoindex on;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
kind: ConfigMap
metadata:
name: nginx-fileserver