All checks were successful
Helm Chart Release / release-chart (push) Successful in 12s
ベアメタルKubernetesクラスターやLoadBalancer環境において、 PHP側で訪問者の実IPアドレスを取得できる機能を追加。 Changes: - Add nginx.forwardRealIP configuration in values.yaml - Implement real_ip_header and set_real_ip_from in Nginx config - Pass real IP info to PHP-FPM via fastcgi_param - Add usage example and documentation in README.md - Create test-real-ip.php for verification - Update chart version to 8.5.2-a Features: - Compatible with existing customConfig.snippet - Configurable trusted proxy networks - Supports multi-tier proxy with recursive option - Default disabled for backward compatibility Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
133 lines
3.3 KiB
YAML
133 lines
3.3 KiB
YAML
replicaCount: 1
|
||
|
||
image:
|
||
nginx:
|
||
registry: docker.io
|
||
repository: nginx
|
||
tag: "1.29.4-alpine-perl"
|
||
pullPolicy: IfNotPresent
|
||
php:
|
||
registry: docker.io
|
||
repository: php
|
||
tag: "8.5.2-fpm-alpine3.23"
|
||
pullPolicy: IfNotPresent
|
||
selenium:
|
||
registry: docker.io
|
||
repository: selenium/standalone-chromium
|
||
tag: "144.0-chromedriver-144.0"
|
||
pullPolicy: IfNotPresent
|
||
|
||
service:
|
||
# type: ClusterIP
|
||
type: LoadBalancer
|
||
port: 80
|
||
|
||
ingress:
|
||
enabled: false
|
||
className: ""
|
||
annotations: {}
|
||
# {
|
||
# acme.cert-manager.io/http01-ingress-class: "nginx",
|
||
# cert-manager.io/cluster-issuer: "letsencrypt-issuer",
|
||
# nginx.ingress.kubernetes.io/from-to-www-redirect: "true",
|
||
# nginx.ingress.kubernetes.io/proxy-body-size: "100m"
|
||
# }
|
||
hosts:
|
||
- host: example.tld
|
||
paths:
|
||
- path: /
|
||
pathType: Prefix
|
||
tls: []
|
||
# [
|
||
# {
|
||
# hosts: [ "example.com" ],
|
||
# secretName: "example-tls"
|
||
# }
|
||
# ]
|
||
|
||
persistence:
|
||
enabled: true
|
||
accessMode: ReadWriteOnce
|
||
size: 1Gi
|
||
|
||
nginx:
|
||
customConfig:
|
||
enabled: false
|
||
snippet: |-
|
||
|
||
# リアルIP転送設定(ベアメタル/LoadBalancer環境向け)
|
||
forwardRealIP:
|
||
# リアルIP取得機能を有効化
|
||
enabled: false
|
||
|
||
# リアルIPを取得するヘッダー名
|
||
# LoadBalancer/Ingressによって異なる
|
||
# - X-Real-IP: シンプルな1段プロキシ
|
||
# - X-Forwarded-For: 多段プロキシ対応(推奨)
|
||
header: "X-Forwarded-For"
|
||
|
||
# 再帰的にリアルIPを検索(多段プロキシ環境で推奨)
|
||
recursive: true
|
||
|
||
# 信頼するプロキシのネットワーク範囲
|
||
# ベアメタルクラスターでは、PodネットワークとServiceネットワークを指定
|
||
trustedProxies:
|
||
- "10.0.0.0/8" # プライベートネットワーク
|
||
- "172.16.0.0/12" # プライベートネットワーク
|
||
- "192.168.0.0/16" # プライベートネットワーク
|
||
|
||
# 追加で信頼するプロキシ(環境に応じてカスタマイズ)
|
||
additionalTrustedProxies: []
|
||
# - "203.0.113.0/24" # 外部LoadBalancerなど
|
||
|
||
# Composer設定
|
||
composer:
|
||
# Composerを使用するかどうか
|
||
enabled: false
|
||
|
||
# Composerでインストールするパッケージ
|
||
# packages配列が空の場合、composer.jsonを使用
|
||
packages: []
|
||
# - "monolog/monolog:^2.0"
|
||
# - "guzzlehttp/guzzle:^7.0"
|
||
|
||
# composer.jsonファイルを使用する場合
|
||
useComposerJson: false
|
||
|
||
# composer.jsonの内容(useComposerJson: trueの場合に使用)
|
||
composerJson: |
|
||
{
|
||
"require": {
|
||
"monolog/monolog": "^2.0"
|
||
}
|
||
}
|
||
|
||
# composer.lockファイルの内容(オプション、再現性を保証)
|
||
composerLock: ""
|
||
|
||
# Composerのインストールオプション
|
||
installOptions: "--no-dev --optimize-autoloader"
|
||
|
||
# 追加のAPKパッケージ(Composer依存関係のビルドに必要な場合)
|
||
additionalApkPackages: []
|
||
# - "libpng-dev"
|
||
# - "libjpeg-turbo-dev"
|
||
|
||
# 追加のPHP拡張(docker-php-ext-installで導入)
|
||
additionalPhpExtensions: []
|
||
# - "gd"
|
||
# - "zip"
|
||
|
||
# Selenium設定(レガシー互換性維持)
|
||
selenium:
|
||
enabled: false
|
||
|
||
externalDatabase:
|
||
enabled: false
|
||
host: mariadb-hostname
|
||
port: 3306
|
||
database: dbname
|
||
username: user
|
||
password: pass
|
||
|
||
resources: {} |