├── namespace
├── namespace.yaml
├── pod1.yaml
└── pod2.yaml
├── hpa
├── service.yaml
├── hpa.yaml
└── deployment.yaml
├── service
├── service.yaml
├── ingress
│ ├── service.yaml
│ ├── ingress.yaml
│ └── deployment.yaml
├── loadbalancer.yaml
├── ingress.yaml
└── deployment.yaml
├── yaml
└── file.yaml
├── storage
├── pvc.yaml
├── pv.yaml
├── empty.yaml
├── podcm.yaml
├── storage.yaml
├── httpd.conf
└── httpd-configmap.yaml
├── challenge3
├── nodeport.yaml
└── deployment.yaml
├── deployments
├── pod.yaml
├── replicaset.yaml
└── deployment.yaml
├── challenge1
├── challenge.yaml
└── start.yaml
├── kops
├── affinity.yaml
└── tolerations.yaml
├── challenge5
├── pod.yaml
└── nginx.conf
├── challenge2
└── deploymentchallenge.yaml
├── mutli
├── initdeploy.yaml
├── deployment.yaml
└── landr.yaml
└── challenge4
└── challenge4.yaml
/namespace/namespace.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Namespace
3 | metadata:
4 | name: dev
--------------------------------------------------------------------------------
/hpa/service.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: phpservice
5 | spec:
6 | selector:
7 | app: stressed
8 | type: ClusterIP
9 | ports:
10 | - port: 80
11 | targetPort: 80
--------------------------------------------------------------------------------
/service/service.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: websrvc
5 | spec:
6 | selector:
7 | server: web
8 | type: ClusterIP
9 | ports:
10 | - port: 8080
11 | targetPort: 80
--------------------------------------------------------------------------------
/yaml/file.yaml:
--------------------------------------------------------------------------------
1 | shopping:
2 | - eggs: 1
3 | - milk: 2
4 | - fruit: apple
5 |
6 | purchased:
7 | fruit:
8 | apple: 1
9 | banana: 2
10 | needToBuy:
11 | - coffee
12 | - tea
13 | - milk
--------------------------------------------------------------------------------
/service/ingress/service.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Service
3 | metadata:
4 | name: websrvc
5 | spec:
6 | selector:
7 | server: web
8 | type: ClusterIP
9 | ports:
10 | - port: 8080
11 | targetPort: 80
--------------------------------------------------------------------------------
/service/loadbalancer.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: awslb
5 | spec:
6 | selector:
7 | name: myPod
8 | type: LoadBalancer
9 | ports:
10 | - port: 8080
11 | targetPort: 80
--------------------------------------------------------------------------------
/storage/pvc.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: PersistentVolumeClaim
3 | metadata:
4 | name: mypvc
5 | spec:
6 | storageClassName: admstor
7 | accessModes:
8 | - ReadWriteOnce
9 | resources:
10 | requests:
11 | storage: 1Gi
--------------------------------------------------------------------------------
/challenge3/nodeport.yaml:
--------------------------------------------------------------------------------
1 | kind: Service
2 | apiVersion: v1
3 | metadata:
4 | name: nodesrvc
5 | spec:
6 | selector:
7 | server: web
8 | type: NodePort
9 | ports:
10 | - port: 8080
11 | targetPort: 80
12 | nodePort: 31234
--------------------------------------------------------------------------------
/storage/pv.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: PersistentVolume
3 | metadata:
4 | name: pv01
5 | spec:
6 | storageClassName: admstor
7 | accessModes:
8 | - ReadWriteOnce
9 | capacity:
10 | storage: 2Gi
11 | hostPath:
12 | path: /data/pv01
--------------------------------------------------------------------------------
/hpa/hpa.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: autoscaling/v1
2 | kind: HorizontalPodAutoscaler
3 | metadata:
4 | name: podhpa
5 | spec:
6 | minReplicas: 1
7 | maxReplicas: 5
8 | scaleTargetRef:
9 | apiVersion: apps/v1
10 | kind: Deployment
11 | name: stressedout
12 | targetCPUUtilizationPercentage: 50
--------------------------------------------------------------------------------
/namespace/pod1.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: myapp1
5 | labels:
6 | name: myapp
7 | spec:
8 | containers:
9 | - name: myapp
10 | image: nginx
11 | resources:
12 | limits:
13 | memory: "128Mi"
14 | cpu: "500m"
15 | ports:
16 | - containerPort: 80
17 |
--------------------------------------------------------------------------------
/namespace/pod2.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | namespace: dev
5 | name: myapp2
6 | labels:
7 | name: myapp
8 | spec:
9 | containers:
10 | - name: myapp
11 | image: nginx
12 | resources:
13 | limits:
14 | memory: "128Mi"
15 | cpu: "500m"
16 | ports:
17 | - containerPort: 80
18 |
--------------------------------------------------------------------------------
/deployments/pod.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: nginx
5 | labels:
6 | name: myPod
7 | type: proxy
8 | spec:
9 | containers:
10 | - name: nginxcontainer
11 | image: nginx:latest
12 | resources:
13 | limits:
14 | memory: "128Mi"
15 | cpu: "500m"
16 | ports:
17 | - containerPort: 80
--------------------------------------------------------------------------------
/challenge1/challenge.yaml:
--------------------------------------------------------------------------------
1 | fruit:
2 | red:
3 | strawberry
4 | tomato
5 | orange:
6 | - orange
7 | yellow:
8 | - banana
9 | green:
10 | - grapes
11 | - watermelon
12 | total: 6
13 |
14 | veg:
15 | yellow:
16 | - peppers
17 | orange:
18 | - carrot
19 | green:
20 | - broccoli
21 | - cabbage
22 | - lettuce
23 | total: 5
--------------------------------------------------------------------------------
/challenge1/start.yaml:
--------------------------------------------------------------------------------
1 | # Create a new file 'completed.yaml'
2 |
3 | # Sort the items by catagory and by colour
4 |
5 | # Add a total at the end
6 |
7 | items:
8 | - banana
9 | - orange
10 | - strawberry
11 | - broccoli
12 | - cabbage
13 | - grapes
14 | - carrot
15 | - tomato
16 | - peppers
17 | - watermelon
18 | - lettuce
19 |
20 | fruit:
21 |
22 | veg:
--------------------------------------------------------------------------------
/service/ingress.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: extensions/v1beta1
2 | kind: Ingress
3 | metadata:
4 | name: web-ingress
5 | #annotations:
6 | # nginx.ingress.kubernetes.io/ssl-redirect: \"false\"
7 | spec:
8 | rules:
9 | - host: mywebserver.internal
10 | http:
11 | paths:
12 | - path: /
13 | backend:
14 | serviceName: websrvc
15 | servicePort: 8080
--------------------------------------------------------------------------------
/kops/affinity.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: nginx
5 | labels:
6 | name: myPod
7 | type: proxy
8 | spec:
9 | containers:
10 | - name: nginxcontainer
11 | image: nginx:latest
12 | resources:
13 | limits:
14 | memory: "128Mi"
15 | cpu: "500m"
16 | ports:
17 | - containerPort: 80
18 | nodeSelector:
19 | location: frontend
--------------------------------------------------------------------------------
/storage/empty.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: myapp
5 | labels:
6 | name: myapp
7 | spec:
8 | containers:
9 | - name: myapp
10 | image: nginx
11 | resources:
12 | limits:
13 | memory: "128Mi"
14 | cpu: "500m"
15 | ports:
16 | - containerPort: 80
17 | volumeMounts:
18 | - name: mystorage
19 | mountPath: /etc/certs
20 | volumes:
21 | - name: mystorage
22 | emptyDir: {}
23 |
--------------------------------------------------------------------------------
/kops/tolerations.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: nginx
5 | labels:
6 | name: myPod
7 | type: proxy
8 | spec:
9 | containers:
10 | - name: nginxcontainer
11 | image: nginx:latest
12 | resources:
13 | limits:
14 | memory: "128Mi"
15 | cpu: "500m"
16 | ports:
17 | - containerPort: 80
18 | tolerations:
19 | - key: "team"
20 | operator: "Equal"
21 | value: "devops"
22 | effect: "NoSchedule"
--------------------------------------------------------------------------------
/service/ingress/ingress.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: networking.k8s.io/v1
2 | kind: Ingress
3 | metadata:
4 | name: web-ingress
5 | # annotations:
6 | # nginx.ingress.kubernetes.io/rewrite-target: /
7 | labels:
8 | name: web-ingress
9 | spec:
10 | rules:
11 | - host: mysite.local
12 | http:
13 | paths:
14 | - pathType: Prefix
15 | path: "/"
16 | backend:
17 | service:
18 | name: websrvc
19 | port:
20 | number: 8080
21 |
--------------------------------------------------------------------------------
/deployments/replicaset.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: ReplicaSet
3 | metadata:
4 | name: myreplicaset
5 | spec:
6 | replicas: 3
7 | selector:
8 | matchLabels:
9 | app: nginx
10 | template:
11 | metadata:
12 | name: proxy
13 | labels:
14 | app: nginx
15 | spec:
16 | containers:
17 | - name: nginxcontainer
18 | image: nginx:latest
19 | resources:
20 | limits:
21 | memory: "128Mi"
22 | cpu: "500m"
23 | ports:
24 | - containerPort: 80
25 |
--------------------------------------------------------------------------------
/hpa/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: stressedout
5 | spec:
6 | selector:
7 | matchLabels:
8 | app: stressed
9 | replicas: 1
10 | template:
11 | metadata:
12 | labels:
13 | app: stressed
14 | spec:
15 | containers:
16 | - name: phpapp
17 | image: k8s.gcr.io/hpa-example
18 | resources:
19 | limits:
20 | memory: "250Mi"
21 | cpu: "250m"
22 | ports:
23 | - containerPort: 80
24 | imagePullPolicy: Always
--------------------------------------------------------------------------------
/challenge5/pod.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: nginx
5 | labels:
6 | name: nginx
7 | spec:
8 | containers:
9 | - name: nginx
10 | image: nginx
11 | resources:
12 | limits:
13 | memory: "128Mi"
14 | cpu: "500m"
15 | ports:
16 | - containerPort: 80
17 | volumeMounts:
18 | - name: nginx-config
19 | mountPath: /etc/nginx/nginx.conf
20 | subPath: nginx.conf
21 | volumes:
22 | - name: nginx-config
23 | configMap:
24 | name: nginx-conf
25 | items:
26 | - key: nginx.conf
27 | path: nginx.conf
28 |
--------------------------------------------------------------------------------
/storage/podcm.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: Pod
3 | metadata:
4 | name: myapp
5 | labels:
6 | name: myapp
7 | spec:
8 | containers:
9 | - name: myapp
10 | image: httpd:2.4
11 | resources:
12 | limits:
13 | memory: "500Mi"
14 | cpu: "500m"
15 | ports:
16 | - containerPort: 80
17 | volumeMounts:
18 | - mountPath: /usr/local/apache2/conf/httpd.conf
19 | name: web-config
20 | subPath: httpd.conf
21 | volumes:
22 | - name: web-config
23 | configMap:
24 | name: httpd-conf
25 | items:
26 | - key: httpd.conf
27 | path: httpd.conf
28 |
--------------------------------------------------------------------------------
/service/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: webdeployment
5 | labels:
6 | name: webdeployment
7 | spec:
8 | replicas: 2
9 | selector:
10 | matchLabels:
11 | server: web
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: web
21 | spec:
22 | containers:
23 | - name: webserver
24 | image: httpd:2.4
25 | resources:
26 | limits:
27 | memory: "500Mi"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 80
--------------------------------------------------------------------------------
/service/ingress/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: webdeploy
5 | labels:
6 | name: webdeploy
7 | spec:
8 | replicas: 2
9 | selector:
10 | matchLabels:
11 | server: web
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: web
21 | spec:
22 | containers:
23 | - name: webserver
24 | image: httpd:2.4
25 | resources:
26 | limits:
27 | memory: "500Mi"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 80
--------------------------------------------------------------------------------
/challenge2/deploymentchallenge.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: challenge
5 | labels:
6 | name: challenge
7 | spec:
8 | replicas: 3
9 | selector:
10 | matchLabels:
11 | os: ubuntu
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | os: ubuntu
21 | spec:
22 | containers:
23 | - name: ubuntu
24 | image: ubuntu:latest
25 | resources:
26 | limits:
27 | memory: "500m"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 8080
--------------------------------------------------------------------------------
/challenge3/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: webdeployment
5 | labels:
6 | name: webdeployment
7 | spec:
8 | replicas: 2
9 | selector:
10 | matchLabels:
11 | server: web
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: web
21 | spec:
22 | containers:
23 | - name: webserver
24 | image: httpd:2.4
25 | resources:
26 | limits:
27 | memory: "500Mi"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 80
--------------------------------------------------------------------------------
/deployments/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: mydeployment
5 | labels:
6 | name: mydeployment
7 | spec:
8 | replicas: 5
9 | selector:
10 | matchLabels:
11 | server: nginx
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: nginx
21 | spec:
22 | containers:
23 | - name: nginxcontainer
24 | image: nginx:latest
25 | resources:
26 | limits:
27 | memory: "128Mi"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 80
--------------------------------------------------------------------------------
/mutli/initdeploy.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: mydeployment
5 | labels:
6 | name: mydeployment
7 | spec:
8 | replicas: 2
9 | selector:
10 | matchLabels:
11 | server: nginx
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: nginx
21 | spec:
22 | initContainers:
23 | - name: myinit
24 | image: hello-world
25 | containers:
26 | - name: nginxcontainer
27 | image: nginx:latest
28 | resources:
29 | limits:
30 | memory: "128Mi"
31 | cpu: "500m"
32 | ports:
33 | - containerPort: 80
--------------------------------------------------------------------------------
/challenge5/nginx.conf:
--------------------------------------------------------------------------------
1 | user nginx;
2 | worker_processes 1;
3 |
4 | error_log /var/log/nginx/error.log warn;
5 | pid /var/run/nginx.pid;
6 |
7 |
8 | events {
9 | worker_connections 1024;
10 | }
11 |
12 |
13 | http {
14 | include /etc/nginx/mime.types;
15 | default_type application/octet-stream;
16 |
17 | log_format main '$remote_addr - $remote_user [$time_local] "$request" '
18 | '$status $body_bytes_sent "$http_referer" '
19 | '"$http_user_agent" "$http_x_forwarded_for"';
20 |
21 | access_log /var/log/nginx/access.log main;
22 |
23 | sendfile on;
24 | #tcp_nopush on;
25 |
26 | keepalive_timeout 65;
27 |
28 | #gzip on;
29 |
30 | include /etc/nginx/conf.d/*.conf;
31 | }
--------------------------------------------------------------------------------
/mutli/deployment.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: apps/v1
2 | kind: Deployment
3 | metadata:
4 | name: mydeployment
5 | labels:
6 | name: mydeployment
7 | spec:
8 | replicas: 2
9 | selector:
10 | matchLabels:
11 | server: nginx
12 | strategy:
13 | rollingUpdate:
14 | maxSurge: 1
15 | maxUnavailable: 1
16 | type: RollingUpdate
17 | template:
18 | metadata:
19 | labels:
20 | server: nginx
21 | spec:
22 | containers:
23 | - name: nginxcontainer
24 | image: nginx:latest
25 | resources:
26 | limits:
27 | memory: "128Mi"
28 | cpu: "500m"
29 | ports:
30 | - containerPort: 80
31 | - name: server
32 | image: ubuntu
33 | resources:
34 | limits:
35 | memory: "500Mi"
36 | cpu: "500m"
37 | command: ["/bin/bash", "-c"]
38 | args:
39 | - sleep 300
--------------------------------------------------------------------------------
/storage/storage.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: PersistentVolume
3 | metadata:
4 | name: pv01
5 | spec:
6 | storageClassName: admstor
7 | accessModes:
8 | - ReadWriteOnce
9 | capacity:
10 | storage: 2Gi
11 | hostPath:
12 | path: /data/pv01
13 | ---
14 | apiVersion: v1
15 | kind: PersistentVolumeClaim
16 | metadata:
17 | name: mypvc
18 | spec:
19 | storageClassName: admstor
20 | accessModes:
21 | - ReadWriteOnce
22 | resources:
23 | requests:
24 | storage: 1Gi
25 | ---
26 | apiVersion: v1
27 | kind: Pod
28 | metadata:
29 | name: storagedemo
30 | labels:
31 | name: pvcdemo
32 | spec:
33 | containers:
34 | - name: democontainer
35 | image: nginx:latest
36 | resources:
37 | limits:
38 | memory: "128Mi"
39 | cpu: "500m"
40 | ports:
41 | - containerPort: 80
42 | volumeMounts:
43 | - name: pvstor
44 | mountPath: /usr/share/nginx/html
45 | volumes:
46 | - name: pvstor
47 | persistentVolumeClaim:
48 | claimName: mypvc
--------------------------------------------------------------------------------
/challenge4/challenge4.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | kind: PersistentVolume
3 | metadata:
4 | name: challenge-pv
5 | spec:
6 | storageClassName: challenge
7 | accessModes:
8 | - ReadWriteOnce
9 | capacity:
10 | storage: 2Gi
11 | hostPath:
12 | path: /data/challenge-pv
13 | ---
14 | apiVersion: v1
15 | kind: PersistentVolumeClaim
16 | metadata:
17 | name: challenge-pvc
18 | spec:
19 | storageClassName: challenge
20 | accessModes:
21 | - ReadWriteOnce
22 | resources:
23 | requests:
24 | storage: 1Gi
25 | ---
26 | apiVersion: v1
27 | kind: Pod
28 | metadata:
29 | name: challenge
30 | labels:
31 | name: challenge
32 | spec:
33 | containers:
34 | - name: nginx
35 | image: nginx:latest
36 | resources:
37 | limits:
38 | memory: "128Mi"
39 | cpu: "500m"
40 | ports:
41 | - containerPort: 80
42 | volumeMounts:
43 | - name: challenge-vl
44 | mountPath: /var/www/html
45 | volumes:
46 | - name: challenge-vl
47 | persistentVolumeClaim:
48 | claimName: challenge-pvc
49 |
--------------------------------------------------------------------------------
/mutli/landr.yaml:
--------------------------------------------------------------------------------
1 | # Non-working Demo
2 | apiVersion: apps/v1
3 | kind: Deployment
4 | metadata:
5 | name: liveread
6 | labels:
7 | app: liveread
8 | spec:
9 | replicas: 3
10 | selector:
11 | matchLabels:
12 | app: liveread
13 | template:
14 | metadata:
15 | labels:
16 | app: liveread
17 | spec:
18 | containers:
19 | - name: myapp
20 | image: liveread:latest
21 | ports:
22 | - containerPort: 8080
23 | livenessProbe:
24 | httpGet:
25 | path: /liveness
26 | port: 8080
27 | initialDelaySeconds: 2
28 | periodSeconds: 3
29 | timeoutSeconds: 1
30 | successThreshold: 1
31 | failureThreshold: 3
32 | readinessProbe:
33 | httpGet:
34 | path: /readiness
35 | port: 8080
36 | initialDelaySeconds: 3
37 | periodSeconds: 3
38 | timeoutSeconds: 1
39 | successThreshold: 1
40 | failureThreshold: 3
41 | resources:
42 | limits:
43 | cpu: 250mi
44 | memory: 500m
--------------------------------------------------------------------------------
/storage/httpd.conf:
--------------------------------------------------------------------------------
1 | #
2 | # This is the main Apache HTTP server configuration file. It contains the
3 | # configuration directives that give the server its instructions.
4 | # See for detailed information.
5 | # In particular, see
6 | #
7 | # for a discussion of each configuration directive.
8 | #
9 | # Do NOT simply read the instructions in here without understanding
10 | # what they do. They're here only as hints or reminders. If you are unsure
11 | # consult the online docs. You have been warned.
12 | #
13 | # Configuration and logfile names: If the filenames you specify for many
14 | # of the server's control files begin with "/" (or "drive:/" for Win32), the
15 | # server will use that explicit path. If the filenames do *not* begin
16 | # with "/", the value of ServerRoot is prepended -- so "logs/access_log"
17 | # with ServerRoot set to "/usr/local/apache2" will be interpreted by the
18 | # server as "/usr/local/apache2/logs/access_log", whereas "/logs/access_log"
19 | # will be interpreted as '/logs/access_log'.
20 |
21 | #
22 | # ServerRoot: The top of the directory tree under which the server's
23 | # configuration, error, and log files are kept.
24 | #
25 | # Do not add a slash at the end of the directory path. If you point
26 | # ServerRoot at a non-local disk, be sure to specify a local disk on the
27 | # Mutex directive, if file-based mutexes are used. If you wish to share the
28 | # same ServerRoot for multiple httpd daemons, you will need to change at
29 | # least PidFile.
30 | #
31 | ServerRoot "/usr/local/apache2"
32 |
33 | #
34 | # Mutex: Allows you to set the mutex mechanism and mutex file directory
35 | # for individual mutexes, or change the global defaults
36 | #
37 | # Uncomment and change the directory if mutexes are file-based and the default
38 | # mutex file directory is not on a local disk or is not appropriate for some
39 | # other reason.
40 | #
41 | # Mutex default:logs
42 |
43 | #
44 | # Listen: Allows you to bind Apache to specific IP addresses and/or
45 | # ports, instead of the default. See also the
46 | # directive.
47 | #
48 | # Change this to Listen on specific IP addresses as shown below to
49 | # prevent Apache from glomming onto all bound IP addresses.
50 | #
51 | #Listen 12.34.56.78:80
52 | Listen 80
53 |
54 | #
55 | # Dynamic Shared Object (DSO) Support
56 | #
57 | # To be able to use the functionality of a module which was built as a DSO you
58 | # have to place corresponding `LoadModule' lines at this location so the
59 | # directives contained in it are actually available _before_ they are used.
60 | # Statically compiled modules (those listed by `httpd -l') do not need
61 | # to be loaded here.
62 | #
63 | # Example:
64 | # LoadModule foo_module modules/mod_foo.so
65 | #
66 | LoadModule mpm_event_module modules/mod_mpm_event.so
67 | #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
68 | #LoadModule mpm_worker_module modules/mod_mpm_worker.so
69 | LoadModule authn_file_module modules/mod_authn_file.so
70 | #LoadModule authn_dbm_module modules/mod_authn_dbm.so
71 | #LoadModule authn_anon_module modules/mod_authn_anon.so
72 | #LoadModule authn_dbd_module modules/mod_authn_dbd.so
73 | #LoadModule authn_socache_module modules/mod_authn_socache.so
74 | LoadModule authn_core_module modules/mod_authn_core.so
75 | LoadModule authz_host_module modules/mod_authz_host.so
76 | LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
77 | LoadModule authz_user_module modules/mod_authz_user.so
78 | #LoadModule authz_dbm_module modules/mod_authz_dbm.so
79 | #LoadModule authz_owner_module modules/mod_authz_owner.so
80 | #LoadModule authz_dbd_module modules/mod_authz_dbd.so
81 | LoadModule authz_core_module modules/mod_authz_core.so
82 | #LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
83 | #LoadModule authnz_fcgi_module modules/mod_authnz_fcgi.so
84 | LoadModule access_compat_module modules/mod_access_compat.so
85 | LoadModule auth_basic_module modules/mod_auth_basic.so
86 | #LoadModule auth_form_module modules/mod_auth_form.so
87 | #LoadModule auth_digest_module modules/mod_auth_digest.so
88 | #LoadModule allowmethods_module modules/mod_allowmethods.so
89 | #LoadModule isapi_module modules/mod_isapi.so
90 | #LoadModule file_cache_module modules/mod_file_cache.so
91 | #LoadModule cache_module modules/mod_cache.so
92 | #LoadModule cache_disk_module modules/mod_cache_disk.so
93 | #LoadModule cache_socache_module modules/mod_cache_socache.so
94 | #LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
95 | #LoadModule socache_dbm_module modules/mod_socache_dbm.so
96 | #LoadModule socache_memcache_module modules/mod_socache_memcache.so
97 | #LoadModule socache_redis_module modules/mod_socache_redis.so
98 | #LoadModule watchdog_module modules/mod_watchdog.so
99 | #LoadModule macro_module modules/mod_macro.so
100 | #LoadModule dbd_module modules/mod_dbd.so
101 | #LoadModule bucketeer_module modules/mod_bucketeer.so
102 | #LoadModule dumpio_module modules/mod_dumpio.so
103 | #LoadModule echo_module modules/mod_echo.so
104 | #LoadModule example_hooks_module modules/mod_example_hooks.so
105 | #LoadModule case_filter_module modules/mod_case_filter.so
106 | #LoadModule case_filter_in_module modules/mod_case_filter_in.so
107 | #LoadModule example_ipc_module modules/mod_example_ipc.so
108 | #LoadModule buffer_module modules/mod_buffer.so
109 | #LoadModule data_module modules/mod_data.so
110 | #LoadModule ratelimit_module modules/mod_ratelimit.so
111 | LoadModule reqtimeout_module modules/mod_reqtimeout.so
112 | #LoadModule ext_filter_module modules/mod_ext_filter.so
113 | #LoadModule request_module modules/mod_request.so
114 | #LoadModule include_module modules/mod_include.so
115 | LoadModule filter_module modules/mod_filter.so
116 | #LoadModule reflector_module modules/mod_reflector.so
117 | #LoadModule substitute_module modules/mod_substitute.so
118 | #LoadModule sed_module modules/mod_sed.so
119 | #LoadModule charset_lite_module modules/mod_charset_lite.so
120 | #LoadModule deflate_module modules/mod_deflate.so
121 | #LoadModule xml2enc_module modules/mod_xml2enc.so
122 | #LoadModule proxy_html_module modules/mod_proxy_html.so
123 | #LoadModule brotli_module modules/mod_brotli.so
124 | LoadModule mime_module modules/mod_mime.so
125 | #LoadModule ldap_module modules/mod_ldap.so
126 | LoadModule log_config_module modules/mod_log_config.so
127 | #LoadModule log_debug_module modules/mod_log_debug.so
128 | #LoadModule log_forensic_module modules/mod_log_forensic.so
129 | #LoadModule logio_module modules/mod_logio.so
130 | #LoadModule lua_module modules/mod_lua.so
131 | LoadModule env_module modules/mod_env.so
132 | #LoadModule mime_magic_module modules/mod_mime_magic.so
133 | #LoadModule cern_meta_module modules/mod_cern_meta.so
134 | #LoadModule expires_module modules/mod_expires.so
135 | LoadModule headers_module modules/mod_headers.so
136 | #LoadModule ident_module modules/mod_ident.so
137 | #LoadModule usertrack_module modules/mod_usertrack.so
138 | #LoadModule unique_id_module modules/mod_unique_id.so
139 | LoadModule setenvif_module modules/mod_setenvif.so
140 | LoadModule version_module modules/mod_version.so
141 | #LoadModule remoteip_module modules/mod_remoteip.so
142 | #LoadModule proxy_module modules/mod_proxy.so
143 | #LoadModule proxy_connect_module modules/mod_proxy_connect.so
144 | #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
145 | #LoadModule proxy_http_module modules/mod_proxy_http.so
146 | #LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
147 | #LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
148 | #LoadModule proxy_uwsgi_module modules/mod_proxy_uwsgi.so
149 | #LoadModule proxy_fdpass_module modules/mod_proxy_fdpass.so
150 | #LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
151 | #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
152 | #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
153 | #LoadModule proxy_express_module modules/mod_proxy_express.so
154 | #LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
155 | #LoadModule session_module modules/mod_session.so
156 | #LoadModule session_cookie_module modules/mod_session_cookie.so
157 | #LoadModule session_crypto_module modules/mod_session_crypto.so
158 | #LoadModule session_dbd_module modules/mod_session_dbd.so
159 | #LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
160 | #LoadModule slotmem_plain_module modules/mod_slotmem_plain.so
161 | #LoadModule ssl_module modules/mod_ssl.so
162 | #LoadModule optional_hook_export_module modules/mod_optional_hook_export.so
163 | #LoadModule optional_hook_import_module modules/mod_optional_hook_import.so
164 | #LoadModule optional_fn_import_module modules/mod_optional_fn_import.so
165 | #LoadModule optional_fn_export_module modules/mod_optional_fn_export.so
166 | #LoadModule dialup_module modules/mod_dialup.so
167 | #LoadModule http2_module modules/mod_http2.so
168 | #LoadModule proxy_http2_module modules/mod_proxy_http2.so
169 | #LoadModule md_module modules/mod_md.so
170 | #LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
171 | #LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
172 | #LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
173 | #LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
174 | LoadModule unixd_module modules/mod_unixd.so
175 | #LoadModule heartbeat_module modules/mod_heartbeat.so
176 | #LoadModule heartmonitor_module modules/mod_heartmonitor.so
177 | #LoadModule dav_module modules/mod_dav.so
178 | LoadModule status_module modules/mod_status.so
179 | LoadModule autoindex_module modules/mod_autoindex.so
180 | #LoadModule asis_module modules/mod_asis.so
181 | #LoadModule info_module modules/mod_info.so
182 | #LoadModule suexec_module modules/mod_suexec.so
183 |
184 | #LoadModule cgid_module modules/mod_cgid.so
185 |
186 |
187 | #LoadModule cgi_module modules/mod_cgi.so
188 |
189 | #LoadModule dav_fs_module modules/mod_dav_fs.so
190 | #LoadModule dav_lock_module modules/mod_dav_lock.so
191 | #LoadModule vhost_alias_module modules/mod_vhost_alias.so
192 | #LoadModule negotiation_module modules/mod_negotiation.so
193 | LoadModule dir_module modules/mod_dir.so
194 | #LoadModule imagemap_module modules/mod_imagemap.so
195 | #LoadModule actions_module modules/mod_actions.so
196 | #LoadModule speling_module modules/mod_speling.so
197 | #LoadModule userdir_module modules/mod_userdir.so
198 | LoadModule alias_module modules/mod_alias.so
199 | #LoadModule rewrite_module modules/mod_rewrite.so
200 |
201 |
202 | #
203 | # If you wish httpd to run as a different user or group, you must run
204 | # httpd as root initially and it will switch.
205 | #
206 | # User/Group: The name (or #number) of the user/group to run httpd as.
207 | # It is usually good practice to create a dedicated user and group for
208 | # running httpd, as with most system services.
209 | #
210 | User daemon
211 | Group daemon
212 |
213 |
214 |
215 | # 'Main' server configuration
216 | #
217 | # The directives in this section set up the values used by the 'main'
218 | # server, which responds to any requests that aren't handled by a
219 | # definition. These values also provide defaults for
220 | # any containers you may define later in the file.
221 | #
222 | # All of these directives may appear inside containers,
223 | # in which case these default settings will be overridden for the
224 | # virtual host being defined.
225 | #
226 |
227 | #
228 | # ServerAdmin: Your address, where problems with the server should be
229 | # e-mailed. This address appears on some server-generated pages, such
230 | # as error documents. e.g. admin@your-domain.com
231 | #
232 | ServerAdmin you@example.com
233 |
234 | #
235 | # ServerName gives the name and port that the server uses to identify itself.
236 | # This can often be determined automatically, but we recommend you specify
237 | # it explicitly to prevent problems during startup.
238 | #
239 | # If your host doesn't have a registered DNS name, enter its IP address here.
240 | #
241 | #ServerName www.example.com:80
242 |
243 | #
244 | # Deny access to the entirety of your server's filesystem. You must
245 | # explicitly permit access to web content directories in other
246 | # blocks below.
247 | #
248 |
249 | AllowOverride none
250 | Require all denied
251 |
252 |
253 | #
254 | # Note that from this point forward you must specifically allow
255 | # particular features to be enabled - so if something's not working as
256 | # you might expect, make sure that you have specifically enabled it
257 | # below.
258 | #
259 |
260 | #
261 | # DocumentRoot: The directory out of which you will serve your
262 | # documents. By default, all requests are taken from this directory, but
263 | # symbolic links and aliases may be used to point to other locations.
264 | #
265 | DocumentRoot "/usr/local/apache2/htdocs"
266 |
267 | #
268 | # Possible values for the Options directive are "None", "All",
269 | # or any combination of:
270 | # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
271 | #
272 | # Note that "MultiViews" must be named *explicitly* --- "Options All"
273 | # doesn't give it to you.
274 | #
275 | # The Options directive is both complicated and important. Please see
276 | # http://httpd.apache.org/docs/2.4/mod/core.html#options
277 | # for more information.
278 | #
279 | Options Indexes FollowSymLinks
280 |
281 | #
282 | # AllowOverride controls what directives may be placed in .htaccess files.
283 | # It can be "All", "None", or any combination of the keywords:
284 | # AllowOverride FileInfo AuthConfig Limit
285 | #
286 | AllowOverride None
287 |
288 | #
289 | # Controls who can get stuff from this server.
290 | #
291 | Require all granted
292 |
293 |
294 | #
295 | # DirectoryIndex: sets the file that Apache will serve if a directory
296 | # is requested.
297 | #
298 |
299 | DirectoryIndex index.html
300 |
301 |
302 | #
303 | # The following lines prevent .htaccess and .htpasswd files from being
304 | # viewed by Web clients.
305 | #
306 |
307 | Require all denied
308 |
309 |
310 | #
311 | # ErrorLog: The location of the error log file.
312 | # If you do not specify an ErrorLog directive within a
313 | # container, error messages relating to that virtual host will be
314 | # logged here. If you *do* define an error logfile for a
315 | # container, that host's errors will be logged there and not here.
316 | #
317 | ErrorLog /proc/self/fd/2
318 |
319 | #
320 | # LogLevel: Control the number of messages logged to the error_log.
321 | # Possible values include: debug, info, notice, warn, error, crit,
322 | # alert, emerg.
323 | #
324 | LogLevel warn
325 |
326 |
327 | #
328 | # The following directives define some format nicknames for use with
329 | # a CustomLog directive (see below).
330 | #
331 | LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
332 | LogFormat "%h %l %u %t \"%r\" %>s %b" common
333 |
334 |
335 | # You need to enable mod_logio.c to use %I and %O
336 | LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
337 |
338 |
339 | #
340 | # The location and format of the access logfile (Common Logfile Format).
341 | # If you do not define any access logfiles within a
342 | # container, they will be logged here. Contrariwise, if you *do*
343 | # define per- access logfiles, transactions will be
344 | # logged therein and *not* in this file.
345 | #
346 | CustomLog /proc/self/fd/1 common
347 |
348 | #
349 | # If you prefer a logfile with access, agent, and referer information
350 | # (Combined Logfile Format) you can use the following directive.
351 | #
352 | #CustomLog "logs/access_log" combined
353 |
354 |
355 |
356 | #
357 | # Redirect: Allows you to tell clients about documents that used to
358 | # exist in your server's namespace, but do not anymore. The client
359 | # will make a new request for the document at its new location.
360 | # Example:
361 | # Redirect permanent /foo http://www.example.com/bar
362 |
363 | #
364 | # Alias: Maps web paths into filesystem paths and is used to
365 | # access content that does not live under the DocumentRoot.
366 | # Example:
367 | # Alias /webpath /full/filesystem/path
368 | #
369 | # If you include a trailing / on /webpath then the server will
370 | # require it to be present in the URL. You will also likely
371 | # need to provide a section to allow access to
372 | # the filesystem path.
373 |
374 | #
375 | # ScriptAlias: This controls which directories contain server scripts.
376 | # ScriptAliases are essentially the same as Aliases, except that
377 | # documents in the target directory are treated as applications and
378 | # run by the server when requested rather than as documents sent to the
379 | # client. The same rules about trailing "/" apply to ScriptAlias
380 | # directives as to Alias.
381 | #
382 | ScriptAlias /cgi-bin/ "/usr/local/apache2/cgi-bin/"
383 |
384 |
385 |
386 |
387 | #
388 | # ScriptSock: On threaded servers, designate the path to the UNIX
389 | # socket used to communicate with the CGI daemon of mod_cgid.
390 | #
391 | #Scriptsock cgisock
392 |
393 |
394 | #
395 | # "/usr/local/apache2/cgi-bin" should be changed to whatever your ScriptAliased
396 | # CGI directory exists, if you have that configured.
397 | #
398 |
399 | AllowOverride None
400 | Options None
401 | Require all granted
402 |
403 |
404 |
405 | #
406 | # Avoid passing HTTP_PROXY environment to CGI's on this or any proxied
407 | # backend servers which have lingering "httpoxy" defects.
408 | # 'Proxy' request header is undefined by the IETF, not listed by IANA
409 | #
410 | RequestHeader unset Proxy early
411 |
412 |
413 |
414 | #
415 | # TypesConfig points to the file containing the list of mappings from
416 | # filename extension to MIME-type.
417 | #
418 | TypesConfig conf/mime.types
419 |
420 | #
421 | # AddType allows you to add to or override the MIME configuration
422 | # file specified in TypesConfig for specific file types.
423 | #
424 | #AddType application/x-gzip .tgz
425 | #
426 | # AddEncoding allows you to have certain browsers uncompress
427 | # information on the fly. Note: Not all browsers support this.
428 | #
429 | #AddEncoding x-compress .Z
430 | #AddEncoding x-gzip .gz .tgz
431 | #
432 | # If the AddEncoding directives above are commented-out, then you
433 | # probably should define those extensions to indicate media types:
434 | #
435 | AddType application/x-compress .Z
436 | AddType application/x-gzip .gz .tgz
437 |
438 | #
439 | # AddHandler allows you to map certain file extensions to "handlers":
440 | # actions unrelated to filetype. These can be either built into the server
441 | # or added with the Action directive (see below)
442 | #
443 | # To use CGI scripts outside of ScriptAliased directories:
444 | # (You will also need to add "ExecCGI" to the "Options" directive.)
445 | #
446 | #AddHandler cgi-script .cgi
447 |
448 | # For type maps (negotiated resources):
449 | #AddHandler type-map var
450 |
451 | #
452 | # Filters allow you to process content before it is sent to the client.
453 | #
454 | # To parse .shtml files for server-side includes (SSI):
455 | # (You will also need to add "Includes" to the "Options" directive.)
456 | #
457 | #AddType text/html .shtml
458 | #AddOutputFilter INCLUDES .shtml
459 |
460 |
461 | #
462 | # The mod_mime_magic module allows the server to use various hints from the
463 | # contents of the file itself to determine its type. The MIMEMagicFile
464 | # directive tells the module where the hint definitions are located.
465 | #
466 | #MIMEMagicFile conf/magic
467 |
468 | #
469 | # Customizable error responses come in three flavors:
470 | # 1) plain text 2) local redirects 3) external redirects
471 | #
472 | # Some examples:
473 | #ErrorDocument 500 "The server made a boo boo."
474 | #ErrorDocument 404 /missing.html
475 | #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
476 | #ErrorDocument 402 http://www.example.com/subscription_info.html
477 | #
478 |
479 | #
480 | # MaxRanges: Maximum number of Ranges in a request before
481 | # returning the entire resource, or one of the special
482 | # values 'default', 'none' or 'unlimited'.
483 | # Default setting is to accept 200 Ranges.
484 | #MaxRanges unlimited
485 |
486 | #
487 | # EnableMMAP and EnableSendfile: On systems that support it,
488 | # memory-mapping or the sendfile syscall may be used to deliver
489 | # files. This usually improves server performance, but must
490 | # be turned off when serving from networked-mounted
491 | # filesystems or if support for these functions is otherwise
492 | # broken on your system.
493 | # Defaults: EnableMMAP On, EnableSendfile Off
494 | #
495 | #EnableMMAP off
496 | #EnableSendfile on
497 |
498 | # Supplemental configuration
499 | #
500 | # The configuration files in the conf/extra/ directory can be
501 | # included to add extra features or to modify the default configuration of
502 | # the server, or you may simply copy their contents here and change as
503 | # necessary.
504 |
505 | # Server-pool management (MPM specific)
506 | #Include conf/extra/httpd-mpm.conf
507 |
508 | # Multi-language error messages
509 | #Include conf/extra/httpd-multilang-errordoc.conf
510 |
511 | # Fancy directory listings
512 | #Include conf/extra/httpd-autoindex.conf
513 |
514 | # Language settings
515 | #Include conf/extra/httpd-languages.conf
516 |
517 | # User home directories
518 | #Include conf/extra/httpd-userdir.conf
519 |
520 | # Real-time info on requests and configuration
521 | #Include conf/extra/httpd-info.conf
522 |
523 | # Virtual hosts
524 | #Include conf/extra/httpd-vhosts.conf
525 |
526 | # Local access to the Apache HTTP Server Manual
527 | #Include conf/extra/httpd-manual.conf
528 |
529 | # Distributed authoring and versioning (WebDAV)
530 | #Include conf/extra/httpd-dav.conf
531 |
532 | # Various default settings
533 | #Include conf/extra/httpd-default.conf
534 |
535 | # Configure mod_proxy_html to understand HTML4/XHTML1
536 |
537 | Include conf/extra/proxy-html.conf
538 |
539 |
540 | # Secure (SSL/TLS) connections
541 | #Include conf/extra/httpd-ssl.conf
542 | #
543 | # Note: The following must must be present to support
544 | # starting without SSL on platforms with no /dev/random equivalent
545 | # but a statically compiled-in mod_ssl.
546 | #
547 |
548 | SSLRandomSeed startup builtin
549 | SSLRandomSeed connect builtin
550 |
--------------------------------------------------------------------------------
/storage/httpd-configmap.yaml:
--------------------------------------------------------------------------------
1 | apiVersion: v1
2 | data:
3 | httpd.conf: "#\n# This is the main Apache HTTP server configuration file. It contains
4 | the\n# configuration directives that give the server its instructions.\n# See
5 | for detailed information.\n# In particular,
6 | see \n# \n# for a discussion
7 | of each configuration directive.\n#\n# Do NOT simply read the instructions in
8 | here without understanding\n# what they do. They're here only as hints or reminders.
9 | \ If you are unsure\n# consult the online docs. You have been warned. \n#\n#
10 | Configuration and logfile names: If the filenames you specify for many\n# of the
11 | server's control files begin with \"/\" (or \"drive:/\" for Win32), the\n# server
12 | will use that explicit path. If the filenames do *not* begin\n# with \"/\", the
13 | value of ServerRoot is prepended -- so \"logs/access_log\"\n# with ServerRoot
14 | set to \"/usr/local/apache2\" will be interpreted by the\n# server as \"/usr/local/apache2/logs/access_log\",
15 | whereas \"/logs/access_log\" \n# will be interpreted as '/logs/access_log'.\n\n#\n#
16 | ServerRoot: The top of the directory tree under which the server's\n# configuration,
17 | error, and log files are kept.\n#\n# Do not add a slash at the end of the directory
18 | path. If you point\n# ServerRoot at a non-local disk, be sure to specify a local
19 | disk on the\n# Mutex directive, if file-based mutexes are used. If you wish to
20 | share the\n# same ServerRoot for multiple httpd daemons, you will need to change
21 | at\n# least PidFile.\n#\nServerRoot \"/usr/local/apache2\"\n\n#\n# Mutex: Allows
22 | you to set the mutex mechanism and mutex file directory\n# for individual mutexes,
23 | or change the global defaults\n#\n# Uncomment and change the directory if mutexes
24 | are file-based and the default\n# mutex file directory is not on a local disk
25 | or is not appropriate for some\n# other reason.\n#\n# Mutex default:logs\n\n#\n#
26 | Listen: Allows you to bind Apache to specific IP addresses and/or\n# ports, instead
27 | of the default. See also the \n# directive.\n#\n# Change this to
28 | Listen on specific IP addresses as shown below to \n# prevent Apache from glomming
29 | onto all bound IP addresses.\n#\n#Listen 12.34.56.78:80\nListen 80\n\n#\n# Dynamic
30 | Shared Object (DSO) Support\n#\n# To be able to use the functionality of a module
31 | which was built as a DSO you\n# have to place corresponding `LoadModule' lines
32 | at this location so the\n# directives contained in it are actually available _before_
33 | they are used.\n# Statically compiled modules (those listed by `httpd -l') do
34 | not need\n# to be loaded here.\n#\n# Example:\n# LoadModule foo_module modules/mod_foo.so\n#\nLoadModule
35 | mpm_event_module modules/mod_mpm_event.so\n#LoadModule mpm_prefork_module modules/mod_mpm_prefork.so\n#LoadModule
36 | mpm_worker_module modules/mod_mpm_worker.so\nLoadModule authn_file_module modules/mod_authn_file.so\n#LoadModule
37 | authn_dbm_module modules/mod_authn_dbm.so\n#LoadModule authn_anon_module modules/mod_authn_anon.so\n#LoadModule
38 | authn_dbd_module modules/mod_authn_dbd.so\n#LoadModule authn_socache_module modules/mod_authn_socache.so\nLoadModule
39 | authn_core_module modules/mod_authn_core.so\nLoadModule authz_host_module modules/mod_authz_host.so\nLoadModule
40 | authz_groupfile_module modules/mod_authz_groupfile.so\nLoadModule authz_user_module
41 | modules/mod_authz_user.so\n#LoadModule authz_dbm_module modules/mod_authz_dbm.so\n#LoadModule
42 | authz_owner_module modules/mod_authz_owner.so\n#LoadModule authz_dbd_module modules/mod_authz_dbd.so\nLoadModule
43 | authz_core_module modules/mod_authz_core.so\n#LoadModule authnz_ldap_module modules/mod_authnz_ldap.so\n#LoadModule
44 | authnz_fcgi_module modules/mod_authnz_fcgi.so\nLoadModule access_compat_module
45 | modules/mod_access_compat.so\nLoadModule auth_basic_module modules/mod_auth_basic.so\n#LoadModule
46 | auth_form_module modules/mod_auth_form.so\n#LoadModule auth_digest_module modules/mod_auth_digest.so\n#LoadModule
47 | allowmethods_module modules/mod_allowmethods.so\n#LoadModule isapi_module modules/mod_isapi.so\n#LoadModule
48 | file_cache_module modules/mod_file_cache.so\n#LoadModule cache_module modules/mod_cache.so\n#LoadModule
49 | cache_disk_module modules/mod_cache_disk.so\n#LoadModule cache_socache_module
50 | modules/mod_cache_socache.so\n#LoadModule socache_shmcb_module modules/mod_socache_shmcb.so\n#LoadModule
51 | socache_dbm_module modules/mod_socache_dbm.so\n#LoadModule socache_memcache_module
52 | modules/mod_socache_memcache.so\n#LoadModule socache_redis_module modules/mod_socache_redis.so\n#LoadModule
53 | watchdog_module modules/mod_watchdog.so\n#LoadModule macro_module modules/mod_macro.so\n#LoadModule
54 | dbd_module modules/mod_dbd.so\n#LoadModule bucketeer_module modules/mod_bucketeer.so\n#LoadModule
55 | dumpio_module modules/mod_dumpio.so\n#LoadModule echo_module modules/mod_echo.so\n#LoadModule
56 | example_hooks_module modules/mod_example_hooks.so\n#LoadModule case_filter_module
57 | modules/mod_case_filter.so\n#LoadModule case_filter_in_module modules/mod_case_filter_in.so\n#LoadModule
58 | example_ipc_module modules/mod_example_ipc.so\n#LoadModule buffer_module modules/mod_buffer.so\n#LoadModule
59 | data_module modules/mod_data.so\n#LoadModule ratelimit_module modules/mod_ratelimit.so\nLoadModule
60 | reqtimeout_module modules/mod_reqtimeout.so\n#LoadModule ext_filter_module modules/mod_ext_filter.so\n#LoadModule
61 | request_module modules/mod_request.so\n#LoadModule include_module modules/mod_include.so\nLoadModule
62 | filter_module modules/mod_filter.so\n#LoadModule reflector_module modules/mod_reflector.so\n#LoadModule
63 | substitute_module modules/mod_substitute.so\n#LoadModule sed_module modules/mod_sed.so\n#LoadModule
64 | charset_lite_module modules/mod_charset_lite.so\n#LoadModule deflate_module modules/mod_deflate.so\n#LoadModule
65 | xml2enc_module modules/mod_xml2enc.so\n#LoadModule proxy_html_module modules/mod_proxy_html.so\n#LoadModule
66 | brotli_module modules/mod_brotli.so\nLoadModule mime_module modules/mod_mime.so\n#LoadModule
67 | ldap_module modules/mod_ldap.so\nLoadModule log_config_module modules/mod_log_config.so\n#LoadModule
68 | log_debug_module modules/mod_log_debug.so\n#LoadModule log_forensic_module modules/mod_log_forensic.so\n#LoadModule
69 | logio_module modules/mod_logio.so\n#LoadModule lua_module modules/mod_lua.so\nLoadModule
70 | env_module modules/mod_env.so\n#LoadModule mime_magic_module modules/mod_mime_magic.so\n#LoadModule
71 | cern_meta_module modules/mod_cern_meta.so\n#LoadModule expires_module modules/mod_expires.so\nLoadModule
72 | headers_module modules/mod_headers.so\n#LoadModule ident_module modules/mod_ident.so\n#LoadModule
73 | usertrack_module modules/mod_usertrack.so\n#LoadModule unique_id_module modules/mod_unique_id.so\nLoadModule
74 | setenvif_module modules/mod_setenvif.so\nLoadModule version_module modules/mod_version.so\n#LoadModule
75 | remoteip_module modules/mod_remoteip.so\n#LoadModule proxy_module modules/mod_proxy.so\n#LoadModule
76 | proxy_connect_module modules/mod_proxy_connect.so\n#LoadModule proxy_ftp_module
77 | modules/mod_proxy_ftp.so\n#LoadModule proxy_http_module modules/mod_proxy_http.so\n#LoadModule
78 | proxy_fcgi_module modules/mod_proxy_fcgi.so\n#LoadModule proxy_scgi_module modules/mod_proxy_scgi.so\n#LoadModule
79 | proxy_uwsgi_module modules/mod_proxy_uwsgi.so\n#LoadModule proxy_fdpass_module
80 | modules/mod_proxy_fdpass.so\n#LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so\n#LoadModule
81 | proxy_ajp_module modules/mod_proxy_ajp.so\n#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so\n#LoadModule
82 | proxy_express_module modules/mod_proxy_express.so\n#LoadModule proxy_hcheck_module
83 | modules/mod_proxy_hcheck.so\n#LoadModule session_module modules/mod_session.so\n#LoadModule
84 | session_cookie_module modules/mod_session_cookie.so\n#LoadModule session_crypto_module
85 | modules/mod_session_crypto.so\n#LoadModule session_dbd_module modules/mod_session_dbd.so\n#LoadModule
86 | slotmem_shm_module modules/mod_slotmem_shm.so\n#LoadModule slotmem_plain_module
87 | modules/mod_slotmem_plain.so\n#LoadModule ssl_module modules/mod_ssl.so\n#LoadModule
88 | optional_hook_export_module modules/mod_optional_hook_export.so\n#LoadModule optional_hook_import_module
89 | modules/mod_optional_hook_import.so\n#LoadModule optional_fn_import_module modules/mod_optional_fn_import.so\n#LoadModule
90 | optional_fn_export_module modules/mod_optional_fn_export.so\n#LoadModule dialup_module
91 | modules/mod_dialup.so\n#LoadModule http2_module modules/mod_http2.so\n#LoadModule
92 | proxy_http2_module modules/mod_proxy_http2.so\n#LoadModule md_module modules/mod_md.so\n#LoadModule
93 | lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so\n#LoadModule lbmethod_bytraffic_module
94 | modules/mod_lbmethod_bytraffic.so\n#LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so\n#LoadModule
95 | lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so\nLoadModule unixd_module
96 | modules/mod_unixd.so\n#LoadModule heartbeat_module modules/mod_heartbeat.so\n#LoadModule
97 | heartmonitor_module modules/mod_heartmonitor.so\n#LoadModule dav_module modules/mod_dav.so\nLoadModule
98 | status_module modules/mod_status.so\nLoadModule autoindex_module modules/mod_autoindex.so\n#LoadModule
99 | asis_module modules/mod_asis.so\n#LoadModule info_module modules/mod_info.so\n#LoadModule
100 | suexec_module modules/mod_suexec.so\n\n\t#LoadModule
101 | cgid_module modules/mod_cgid.so\n\n\n\t#LoadModule
102 | cgi_module modules/mod_cgi.so\n\n#LoadModule dav_fs_module modules/mod_dav_fs.so\n#LoadModule
103 | dav_lock_module modules/mod_dav_lock.so\n#LoadModule vhost_alias_module modules/mod_vhost_alias.so\n#LoadModule
104 | negotiation_module modules/mod_negotiation.so\nLoadModule dir_module modules/mod_dir.so\n#LoadModule
105 | imagemap_module modules/mod_imagemap.so\n#LoadModule actions_module modules/mod_actions.so\n#LoadModule
106 | speling_module modules/mod_speling.so\n#LoadModule userdir_module modules/mod_userdir.so\nLoadModule
107 | alias_module modules/mod_alias.so\n#LoadModule rewrite_module modules/mod_rewrite.so\n\n\n#\n# If you wish httpd to run as a different user or group, you
109 | must run\n# httpd as root initially and it will switch. \n#\n# User/Group: The
110 | name (or #number) of the user/group to run httpd as.\n# It is usually good practice
111 | to create a dedicated user and group for\n# running httpd, as with most system
112 | services.\n#\nUser daemon\nGroup daemon\n\n\n\n# 'Main' server configuration\n#\n#
113 | The directives in this section set up the values used by the 'main'\n# server,
114 | which responds to any requests that aren't handled by a\n# definition.
115 | \ These values also provide defaults for\n# any containers you may
116 | define later in the file.\n#\n# All of these directives may appear inside
117 | containers,\n# in which case these default settings will be overridden for the\n#
118 | virtual host being defined.\n#\n\n#\n# ServerAdmin: Your address, where problems
119 | with the server should be\n# e-mailed. This address appears on some server-generated
120 | pages, such\n# as error documents. e.g. admin@your-domain.com\n#\nServerAdmin
121 | you@example.com\n\n#\n# ServerName gives the name and port that the server uses
122 | to identify itself.\n# This can often be determined automatically, but we recommend
123 | you specify\n# it explicitly to prevent problems during startup.\n#\n# If your
124 | host doesn't have a registered DNS name, enter its IP address here.\n#\n#ServerName
125 | www.example.com:80\n\n#\n# Deny access to the entirety of your server's filesystem.
126 | You must\n# explicitly permit access to web content directories in other \n#
127 | blocks below.\n#\n\n AllowOverride none\n Require all denied\n\n\n#\n#
128 | Note that from this point forward you must specifically allow\n# particular features
129 | to be enabled - so if something's not working as\n# you might expect, make sure
130 | that you have specifically enabled it\n# below.\n#\n\n#\n# DocumentRoot: The directory
131 | out of which you will serve your\n# documents. By default, all requests are taken
132 | from this directory, but\n# symbolic links and aliases may be used to point to
133 | other locations.\n#\nDocumentRoot \"/usr/local/apache2/htdocs\"\n\n
134 | \ #\n # Possible values for the Options directive are \"None\", \"All\",\n
135 | \ # or any combination of:\n # Indexes Includes FollowSymLinks SymLinksifOwnerMatch
136 | ExecCGI MultiViews\n #\n # Note that \"MultiViews\" must be named *explicitly*
137 | --- \"Options All\"\n # doesn't give it to you.\n #\n # The Options directive
138 | is both complicated and important. Please see\n # http://httpd.apache.org/docs/2.4/mod/core.html#options\n
139 | \ # for more information.\n #\n Options Indexes FollowSymLinks\n\n #\n
140 | \ # AllowOverride controls what directives may be placed in .htaccess files.\n
141 | \ # It can be \"All\", \"None\", or any combination of the keywords:\n #
142 | \ AllowOverride FileInfo AuthConfig Limit\n #\n AllowOverride None\n\n
143 | \ #\n # Controls who can get stuff from this server.\n #\n Require
144 | all granted\n\n\n#\n# DirectoryIndex: sets the file that Apache will
145 | serve if a directory\n# is requested.\n#\n\n DirectoryIndex
146 | index.html\n\n\n#\n# The following lines prevent .htaccess and .htpasswd
147 | files from being \n# viewed by Web clients. \n#\n\n Require
148 | all denied\n\n\n#\n# ErrorLog: The location of the error log file.\n#
149 | If you do not specify an ErrorLog directive within a \n# container,
150 | error messages relating to that virtual host will be\n# logged here. If you *do*
151 | define an error logfile for a \n# container, that host's errors will
152 | be logged there and not here.\n#\nErrorLog /proc/self/fd/2\n\n#\n# LogLevel: Control
153 | the number of messages logged to the error_log.\n# Possible values include: debug,
154 | info, notice, warn, error, crit,\n# alert, emerg.\n#\nLogLevel warn\n\n\n #\n # The following directives define some format nicknames
156 | for use with\n # a CustomLog directive (see below).\n #\n LogFormat \"%h
157 | %l %u %t \\\"%r\\\" %>s %b \\\"%{Referer}i\\\" \\\"%{User-Agent}i\\\"\" combined\n
158 | \ LogFormat \"%h %l %u %t \\\"%r\\\" %>s %b\" common\n\n \n
159 | \ # You need to enable mod_logio.c to use %I and %O\n LogFormat \"%h
160 | %l %u %t \\\"%r\\\" %>s %b \\\"%{Referer}i\\\" \\\"%{User-Agent}i\\\" %I %O\"
161 | combinedio\n \n\n #\n # The location and format of the access
162 | logfile (Common Logfile Format).\n # If you do not define any access logfiles
163 | within a \n # container, they will be logged here. Contrariwise,
164 | if you *do*\n # define per- access logfiles, transactions will
165 | be\n # logged therein and *not* in this file.\n #\n CustomLog /proc/self/fd/1
166 | common\n\n #\n # If you prefer a logfile with access, agent, and referer
167 | information\n # (Combined Logfile Format) you can use the following directive.\n
168 | \ #\n #CustomLog \"logs/access_log\" combined\n\n\n\n
169 | \ #\n # Redirect: Allows you to tell clients about documents that used to
170 | \n # exist in your server's namespace, but do not anymore. The client \n #
171 | will make a new request for the document at its new location.\n # Example:\n
172 | \ # Redirect permanent /foo http://www.example.com/bar\n\n #\n # Alias:
173 | Maps web paths into filesystem paths and is used to\n # access content that
174 | does not live under the DocumentRoot.\n # Example:\n # Alias /webpath /full/filesystem/path\n
175 | \ #\n # If you include a trailing / on /webpath then the server will\n #
176 | require it to be present in the URL. You will also likely\n # need to provide
177 | a section to allow access to\n # the filesystem path.\n\n #\n
178 | \ # ScriptAlias: This controls which directories contain server scripts. \n
179 | \ # ScriptAliases are essentially the same as Aliases, except that\n # documents
180 | in the target directory are treated as applications and\n # run by the server
181 | when requested rather than as documents sent to the\n # client. The same rules
182 | about trailing \"/\" apply to ScriptAlias\n # directives as to Alias.\n #\n
183 | \ ScriptAlias /cgi-bin/ \"/usr/local/apache2/cgi-bin/\"\n\n\n\n\n #\n # ScriptSock: On threaded servers, designate the path
185 | to the UNIX\n # socket used to communicate with the CGI daemon of mod_cgid.\n
186 | \ #\n #Scriptsock cgisock\n\n\n#\n# \"/usr/local/apache2/cgi-bin\"
187 | should be changed to whatever your ScriptAliased\n# CGI directory exists, if you
188 | have that configured.\n#\n\n AllowOverride
189 | None\n Options None\n Require all granted\n\n\n\n
190 | \ #\n # Avoid passing HTTP_PROXY environment to CGI's on this or any proxied\n
191 | \ # backend servers which have lingering \"httpoxy\" defects.\n # 'Proxy'
192 | request header is undefined by the IETF, not listed by IANA\n #\n RequestHeader
193 | unset Proxy early\n\n\n\n #\n # TypesConfig
194 | points to the file containing the list of mappings from\n # filename extension
195 | to MIME-type.\n #\n TypesConfig conf/mime.types\n\n #\n # AddType
196 | allows you to add to or override the MIME configuration\n # file specified
197 | in TypesConfig for specific file types.\n #\n #AddType application/x-gzip
198 | .tgz\n #\n # AddEncoding allows you to have certain browsers uncompress\n
199 | \ # information on the fly. Note: Not all browsers support this.\n #\n #AddEncoding
200 | x-compress .Z\n #AddEncoding x-gzip .gz .tgz\n #\n # If the AddEncoding
201 | directives above are commented-out, then you\n # probably should define those
202 | extensions to indicate media types:\n #\n AddType application/x-compress
203 | .Z\n AddType application/x-gzip .gz .tgz\n\n #\n # AddHandler allows
204 | you to map certain file extensions to \"handlers\":\n # actions unrelated to
205 | filetype. These can be either built into the server\n # or added with the Action
206 | directive (see below)\n #\n # To use CGI scripts outside of ScriptAliased
207 | directories:\n # (You will also need to add \"ExecCGI\" to the \"Options\"
208 | directive.)\n #\n #AddHandler cgi-script .cgi\n\n # For type maps (negotiated
209 | resources):\n #AddHandler type-map var\n\n #\n # Filters allow you to
210 | process content before it is sent to the client.\n #\n # To parse .shtml
211 | files for server-side includes (SSI):\n # (You will also need to add \"Includes\"
212 | to the \"Options\" directive.)\n #\n #AddType text/html .shtml\n #AddOutputFilter
213 | INCLUDES .shtml\n\n\n#\n# The mod_mime_magic module allows the server
214 | to use various hints from the\n# contents of the file itself to determine its
215 | type. The MIMEMagicFile\n# directive tells the module where the hint definitions
216 | are located.\n#\n#MIMEMagicFile conf/magic\n\n#\n# Customizable error responses
217 | come in three flavors:\n# 1) plain text 2) local redirects 3) external redirects\n#\n#
218 | Some examples:\n#ErrorDocument 500 \"The server made a boo boo.\"\n#ErrorDocument
219 | 404 /missing.html\n#ErrorDocument 404 \"/cgi-bin/missing_handler.pl\"\n#ErrorDocument
220 | 402 http://www.example.com/subscription_info.html\n#\n\n#\n# MaxRanges: Maximum
221 | number of Ranges in a request before\n# returning the entire resource, or one
222 | of the special\n# values 'default', 'none' or 'unlimited'.\n# Default setting
223 | is to accept 200 Ranges.\n#MaxRanges unlimited\n\n#\n# EnableMMAP and EnableSendfile:
224 | On systems that support it, \n# memory-mapping or the sendfile syscall may be
225 | used to deliver\n# files. This usually improves server performance, but must\n#
226 | be turned off when serving from networked-mounted \n# filesystems or if support
227 | for these functions is otherwise\n# broken on your system.\n# Defaults: EnableMMAP
228 | On, EnableSendfile Off\n#\n#EnableMMAP off\n#EnableSendfile on\n\n# Supplemental
229 | configuration\n#\n# The configuration files in the conf/extra/ directory can be
230 | \n# included to add extra features or to modify the default configuration of \n#
231 | the server, or you may simply copy their contents here and change as \n# necessary.\n\n#
232 | Server-pool management (MPM specific)\n#Include conf/extra/httpd-mpm.conf\n\n#
233 | Multi-language error messages\n#Include conf/extra/httpd-multilang-errordoc.conf\n\n#
234 | Fancy directory listings\n#Include conf/extra/httpd-autoindex.conf\n\n# Language
235 | settings\n#Include conf/extra/httpd-languages.conf\n\n# User home directories\n#Include
236 | conf/extra/httpd-userdir.conf\n\n# Real-time info on requests and configuration\n#Include
237 | conf/extra/httpd-info.conf\n\n# Virtual hosts\n#Include conf/extra/httpd-vhosts.conf\n\n#
238 | Local access to the Apache HTTP Server Manual\n#Include conf/extra/httpd-manual.conf\n\n#
239 | Distributed authoring and versioning (WebDAV)\n#Include conf/extra/httpd-dav.conf\n\n#
240 | Various default settings\n#Include conf/extra/httpd-default.conf\n\n# Configure
241 | mod_proxy_html to understand HTML4/XHTML1\n\nInclude
242 | conf/extra/proxy-html.conf\n\n\n# Secure (SSL/TLS) connections\n#Include
243 | conf/extra/httpd-ssl.conf\n#\n# Note: The following must must be present to support\n#
244 | \ starting without SSL on platforms with no /dev/random equivalent\n# but
245 | a statically compiled-in mod_ssl.\n#\n\nSSLRandomSeed startup
246 | builtin\nSSLRandomSeed connect builtin\n"
247 | kind: ConfigMap
248 | metadata:
249 | creationTimestamp: "2020-04-03T14:22:46Z"
250 | name: httpd-conf
251 | namespace: default
252 | resourceVersion: "422041"
253 | selfLink: /api/v1/namespaces/default/configmaps/httpd-conf
254 | uid: 6822a1ec-ad48-4033-a97a-50d52d2d1d72
255 |
--------------------------------------------------------------------------------