k8s创建nginx
创建命名空间
nginx-namespace.yaml
kind: Namespace
apiVersion: v1
metadata:
name: nginx
创建SVC服务层
my-nginx-service.yaml
kind: Service
apiVersion: v1
metadata:
name: my-nginx
namespace: nginx
labels:
app: my-nginx
spec:
type: NodePort
ports:
- protocol: TCP
port: 80
selector:
app: my-nginx
创建配置文件 nginx_conf 服务配置文件 index是首页显示的内容
my-nginx-configMap.yaml
kind: ConfigMap
apiVersion: v1
metadata:
name: my-nginx
namespace: nginx
data:
index: hello nginx alx!!!
nginx_conf: |-
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
创建服务部署
my-nginx-deployment.yaml
kind: Deployment
apiVersion: apps/v1
metadata:
name: my-nginx
namespace: nginx
spec:
replicas: 1
selector:
matchLabels:
app: my-nginx
template:
metadata:
creationTimestamp: null
labels:
app: my-nginx
spec:
volumes:
- name: nginx
configMap:
name: my-nginx
items:
- key: nginx_conf
path: nginx.conf
defaultMode: 420
- name: index
configMap:
name: my-nginx
items:
- key: index
path: index.html
defaultMode: 420
containers:
- name: my-nginx
image: nginx
ports:
- containerPort: 80
protocol: TCP
resources: {}
volumeMounts:
- name: nginx
mountPath: /etc/nginx/conf.d
- name: index
mountPath: /usr/share/nginx/html
执行kubectl创建命令
kubectl create -f nginx-service.yaml
kubectl create -f nginx-configMap.yaml
kubectl create -f nginx-deployment.yaml