Created
March 11, 2018 11:04
-
Star
(118)
You must be signed in to star a gist -
Fork
(44)
You must be signed in to fork a gist
-
-
Save petitviolet/d36f33d145d0bbf4b54eb187b79d0244 to your computer and use it in GitHub Desktop.
Revisions
-
petitviolet created this gist
Mar 11, 2018 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,106 @@ apiVersion: v1 kind: ConfigMap metadata: name: nginx-conf data: nginx.conf: | user nginx; worker_processes 3; error_log /var/log/nginx/error.log; events { worker_connections 10240; } http { log_format main 'remote_addr:$remote_addr\t' 'time_local:$time_local\t' 'method:$request_method\t' 'uri:$request_uri\t' 'host:$host\t' 'status:$status\t' 'bytes_sent:$body_bytes_sent\t' 'referer:$http_referer\t' 'useragent:$http_user_agent\t' 'forwardedfor:$http_x_forwarded_for\t' 'request_time:$request_time'; access_log /var/log/nginx/access.log main; server { listen 80; server_name _; location / { root html; index index.html index.htm; } } include /etc/nginx/virtualhost/virtualhost.conf; } virtualhost.conf: | upstream app { server localhost:8080; keepalive 1024; } server { listen 80 default_server; root /usr/local/app; access_log /var/log/nginx/app.access_log main; error_log /var/log/nginx/app.error_log; location / { proxy_pass http://app/; proxy_http_version 1.1; } } --- apiVersion: apps/v1beta1 kind: Deployment metadata: name: nginx spec: replicas: 1 template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx ports: - containerPort: 80 volumeMounts: - mountPath: /etc/nginx # mount nginx-conf volumn to /etc/nginx readOnly: true name: nginx-conf - mountPath: /var/log/nginx name: log volumes: - name: nginx-conf configMap: name: nginx-conf # place ConfigMap `nginx-conf` on /etc/nginx items: - key: nginx.conf path: nginx.conf - key: virtualhost.conf path: virtualhost/virtualhost.conf # dig directory - name: log emptyDir: {} --- apiVersion: v1 kind: Service metadata: name: nginx spec: type: LoadBalancer ports: - port: 80 targetPort: 80 selector: app: nginx