diff --git a/README.md b/README.md index 9e1aa36..18cb628 100644 --- a/README.md +++ b/README.md @@ -135,7 +135,17 @@ helm install my-wordpress ./wordpress-nginx -f custom-values.yaml |-----------|------|-------------| | `ingress.enabled` | Ingressを有効化 | `false` | | `ingress.className` | IngressClass名 | `nginx` | -| `ingress.hosts` | ホスト設定 | `wordpress.example.com` | +| `ingress.annotations` | Ingressアノテーション | `{}` | +| `ingress.hostname` | プライマリホスト名 | `wordpress.example.com` | +| `ingress.path` | パス | `/` | +| `ingress.pathType` | パスタイプ | `Prefix` | +| `ingress.tls` | TLS有効化(自動設定) | `false` | +| `ingress.extraHosts` | 追加ホスト設定 | `[]` | +| `ingress.extraTls` | 追加TLS設定 | `[]` | + +**TLS自動設定**: `tls: true` にすると、`hostname` を使用して自動的に以下が設定されます: +- hosts: `[hostname]` +- secretName: `{hostname-with-dash}-tls`(例: `example-com-tls`) ### 永続化設定 @@ -205,15 +215,78 @@ helm install my-wordpress ./wordpress-nginx \ ### Ingressでの公開 +#### 基本的なIngress(HTTPのみ) + ```bash helm install my-wordpress ./wordpress-nginx \ --set ingress.enabled=true \ - --set ingress.hosts[0].host=wordpress.example.com \ - --set ingress.hosts[0].paths[0].path=/ \ - --set ingress.hosts[0].paths[0].pathType=Prefix \ + --set ingress.hostname=wordpress.example.com \ --set service.type=ClusterIP ``` +#### TLS有効化(自動設定) + +```bash +helm install my-wordpress ./wordpress-nginx \ + --set ingress.enabled=true \ + --set ingress.hostname=wordpress.example.com \ + --set ingress.tls=true \ + --set service.type=ClusterIP +``` + +これで自動的に以下が設定されます: +- TLS Secret名: `wordpress-example-com-tls` +- TLS対象ホスト: `wordpress.example.com` + +#### cert-managerと組み合わせ + +```bash +helm install my-wordpress ./wordpress-nginx \ + --set ingress.enabled=true \ + --set ingress.hostname=blog.example.com \ + --set ingress.tls=true \ + --set ingress.annotations."cert-manager\.io/cluster-issuer"=letsencrypt-issuer \ + --set ingress.annotations."acme\.cert-manager\.io/http01-ingress-class"=nginx +``` + +または values.yaml で: + +```yaml +ingress: + enabled: true + hostname: blog.example.com + tls: true + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-issuer" + acme.cert-manager.io/http01-ingress-class: "nginx" + nginx.ingress.kubernetes.io/from-to-www-redirect: "true" + nginx.ingress.kubernetes.io/proxy-body-size: "100m" +``` + +#### 複数ホスト設定 + +```bash +helm install my-wordpress ./wordpress-nginx -f - <