Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| chp:images:nginx [2019/02/10 15:34] – created ferry | chp:images:nginx [2026/05/27 14:01] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== NGINX ====== | ||
| + | [[https:// | ||
| + | een reverse-proxyserver voor HTTP-, SMTP-, POP3- en IMAP-protocollen, | ||
| + | sterk gericht op hoge prestaties en laag geheugengebruik. | ||
| + | |||
| + | ===== Builds ===== | ||
| + | Nginx bestaat in 2 smaken: een [[https:// | ||
| + | een [[https:// | ||
| + | smaak aan. | ||
| + | Deze wordt gebouwd in de Major.Medior.Minor formaat (bijv. 1.21.6). | ||
| + | Wij brengen de de images met de volgende speciale tags : | ||
| + | ^ Formaat | ||
| + | | latest | ||
| + | | Major.Medior | ||
| + | | Major.Medior.Minor | registry.npohosting.nl/ | ||
| + | |||
| + | Wij adviseren voor projecten om de Major.Medior te gebruiken om zo de | ||
| + | security op peil te houden en na testen de Medior versie te verhogen | ||
| + | wanneer dit nodig is. | ||
| + | |||
| + | ===== Versies ===== | ||
| + | We onderhouden de meest recente zgn " | ||
| + | schrijven is dat 1.21.x. Minor updates releasen we 1x per 4 weken, | ||
| + | tenzij er ernstige security incidenten gevonden worden, dan releasen we | ||
| + | zo snel mogelijk. | ||
| + | |||
| + | ===== Gebruik ===== | ||
| + | Deze nginx build maakt gebruik van S2I intergratie, | ||
| + | deze gebruikt kan worden in een Openshift build en je hier code in | ||
| + | kan deployen via een repository en een deploy script. | ||
| + | |||
| + | ==== Reverse proxy ==== | ||
| + | Zonder gebruik van het build proces is deze image te gebruiken | ||
| + | als reverse proxy, dit kan gedaan worden door in Openshift | ||
| + | een ConfigMap toe te voegen aan de deploy. | ||
| + | minimaal een default.conf key te bevatten met de reverse proxy config. | ||
| + | Een voorbeeld voor deze config map is te vinden in onze nginx-phpfpm | ||
| + | template. | ||
| + | |||
| + | ==== deploy script ==== | ||
| + | Deze image zoekt tijdens het build proces van S2I naar deploy.sh, | ||
| + | deze hoort in de root van de repository te staan. In een deploy-script | ||
| + | kunnen zaken als PHP-Composer worden gebruikt. | ||
| + | |||
| + | ==== Webroot ==== | ||
| + | De webroot van deze image bevind zich in / | ||
| + | |||
| + | ==== HTTP Caching ==== | ||
| + | Het is mogelijk om caching aan te zetten, hiervoor dienen een aantal | ||
| + | dingen uitgevoerd te worden. | ||
| + | |||
| + | Maak een caching directory aan die in memory leeft, door ervoor te zorgen | ||
| + | dat er in de deployment config onder spec.template.spec het volgende staat | ||
| + | bij volume: | ||
| + | < | ||
| + | volumes: | ||
| + | - emptyDir: | ||
| + | medium: Memory | ||
| + | name: nginx-cache | ||
| + | - configMap: | ||
| + | defaultMode: | ||
| + | name: nginx-confd | ||
| + | name: nginx-confd | ||
| + | - configMap: | ||
| + | defaultMode: | ||
| + | items: | ||
| + | - key: nginx.conf | ||
| + | path: nginx.conf | ||
| + | name: nginx-conf | ||
| + | name: nginx-conf | ||
| + | </ | ||
| + | Zet vervolgens onder spec.template.spec.container in de specifieke | ||
| + | container onder volumeMounts: | ||
| + | < | ||
| + | volumeMounts: | ||
| + | - mountPath: / | ||
| + | name: nginx-cache | ||
| + | - mountPath: / | ||
| + | name: nginx-confd | ||
| + | - mountPath: / | ||
| + | name: nginx-conf | ||
| + | </ | ||
| + | |||
| + | === Verhoog de memory limits van de pod === | ||
| + | Zorg ervoor dat de memory limit van de pod minimaal de hoeveelheid | ||
| + | memory is van de cache + 128MB. | ||
| + | aanpassen onder '' | ||
| + | onder resources: | ||
| + | < | ||
| + | resources: | ||
| + | limits: | ||
| + | memory: 640Mi | ||
| + | </ | ||
| + | |||
| + | === Voeg caching regels toe aan nginx config === | ||
| + | Maak een nginx-conf ConfigMap aan met de key nginx.conf, | ||
| + | deze zit standaard in onze Nginx-php-fpm template. Kijk op | ||
| + | https:// | ||
| + | die in een config-file kunnen staan. | ||
| + | boven aan de config staat: | ||
| + | < | ||
| + | proxy_cache_path / | ||
| + | </ | ||
| + | |||
| + | Maak een nginx-confd ConfigMap aan voor vhost configuratie met minimaal | ||
| + | een default.conf als key. voeg hier in de vhost configuratie het | ||
| + | volgende toe: | ||
| + | < | ||
| + | proxy_cache cache; | ||
| + | proxy_cache_key $scheme$request_method$host$request_uri; | ||
| + | proxy_cache_revalidate on; | ||
| + | proxy_cache_use_stale error timeout updating; | ||
| + | proxy_cache_background_update on; | ||
| + | proxy_cache_lock on; | ||
| + | | ||
| + | add_header X-Proxy-Cache $upstream_cache_status; | ||
| + | add_header X-Proxy-Http-Date $upstream_http_date; | ||
| + | </ | ||