在Kubernetes(K8S)环境下实现Nginx Proxy Manager SSL的配置是很常见的需求。Nginx Proxy Manager是一个可视化的Nginx配置管理器,通过它可以轻松管理Nginx代理和SSL证书。在本文中,我将教您如何在K8S环境下配置Nginx Proxy Manager的SSL证书。首先,让我们来看一下整个过程的步骤:

| 步骤 | 操作描述 |
|------|---------------------------------------|
| 1 | 安装Nginx Proxy Manager |
| 2 | 为Nginx Proxy Manager创建K8S服务 |
| 3 | 配置Nginx Proxy Manager的SSL证书 |

接下来,让我们分别介绍每个步骤需要做什么以及使用的代码示例:

### 步骤一:安装Nginx Proxy Manager

在K8S环境中,我们可以通过Helm来快速部署Nginx Proxy Manager。首先,确保您的K8S集群已经部署了Helm,然后执行以下命令安装Nginx Proxy Manager:

```bash
helm repo add nginx-proxy-manager https://nginx-proxy-manager.github.io/api/helm-charts
helm repo update
helm install nginx-proxy-manager nginx-proxy-manager/nginx-proxy-manager
```

### 步骤二:为Nginx Proxy Manager创建K8S服务

为了让Nginx Proxy Manager能够被外部访问,我们需要为其创建K8S服务,并向外暴露端口。以下是创建K8S服务的yaml文件示例:

```yaml
apiVersion: v1
kind: Service
metadata:
name: nginx-proxy-manager
namespace: default
spec:
selector:
app.kubernetes.io/name: nginx-proxy-manager
ports:
- protocol: TCP
port: 80
targetPort: 80
```

保存上述yaml文件为`nginx-proxy-manager-svc.yaml`,然后执行以下命令创建K8S服务:

```bash
kubectl apply -f nginx-proxy-manager-svc.yaml
```

### 步骤三:配置Nginx Proxy Manager的SSL证书

最后一步是配置Nginx Proxy Manager的SSL证书。您可以使用Let's Encrypt等证书颁发机构提供的免费SSL证书。首先,确保您的域名解析到Nginx Proxy Manager的外部IP地址,然后在Nginx Proxy Manager界面中添加SSL证书。

在Nginx Proxy Manager界面中,选择您的代理,然后在SSL选项卡中添加证书。将您的域名和证书密钥粘贴到对应的字段中,然后保存更改。Nginx Proxy Manager将自动为您配置SSL证书并启用HTTPS。

通过以上步骤,您已经成功配置了Nginx Proxy Manager的SSL证书。您可以通过访问您的域名来验证SSL证书是否生效。

总结一下,本文介绍了在K8S环境下实现Nginx Proxy Manager SSL的步骤,并提供了相应的代码示例。希望这篇文章能够帮助您顺利配置Nginx Proxy Manager的SSL证书。祝您成功!如果您有任何疑问,欢迎留言交流。