Kubernetes Nginx Pod HTTPS 静态文件访问配置
以下 YAML 文件配置了一个 Nginx Pod,它允许通过 HTTPS 协议访问 Pod 内的静态文件内容:
apiVersion: v1
kind: Pod
metadata:
name: nginx-pod
labels:
app: nginx
spec:
containers:
- name: nginx-container
image: nginx
ports:
- containerPort: 80
volumeMounts:
- name: nginx-volume
mountPath: '/usr/share/nginx/html'
volumes:
- name: nginx-volume
configMap:
name: nginx-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: nginx-config
data:
default.conf: |
server {
listen 443 ssl;
server_name localhost;
ssl_certificate '/etc/nginx/ssl/certificate.crt';
ssl_certificate_key '/etc/nginx/ssl/private.key';
location / {
root '/usr/share/nginx/html';
index index.html;
}
}
---
apiVersion: v1
kind: Secret
metadata:
name: nginx-secret
data:
certificate.crt: '<base64 encoded SSL certificate>'
private.key: '<base64 encoded private key>'
说明:
nginx-pod:Pod 的名称。nginx-container:容器的名称。nginx-volume:用于存储 Nginx 配置文件和静态文件的卷。nginx-config:包含 Nginx 配置文件的 ConfigMap。nginx-secret:包含 SSL 证书和密钥的 Secret。default.conf:Nginx 配置文件,监听 443 端口并配置 HTTPS 访问。certificate.crt:SSL 证书的 base64 编码。private.key:私钥的 base64 编码。
注意:
- 替换
<base64 encoded SSL certificate>和<base64 encoded private key>为您的实际证书和密钥的 base64 编码。 - 请确保您的证书和密钥正确配置。
- 您可以根据需要修改 Nginx 配置文件,例如更改监听端口、服务器名称、文件路径等。
部署方式:
您可以使用 kubectl 命令将以上 YAML 文件部署到 Kubernetes 集群中。
kubectl apply -f nginx-pod.yaml
成功部署后,您就可以通过 HTTPS 协议访问您的 Nginx Pod 内的静态文件内容了。
原文地址: https://www.cveoy.top/t/topic/pgWm 著作权归作者所有。请勿转载和采集!