NGINX
A Pacto contract for NGINX — a stateless reverse proxy and web server.
pactoVersion: "1.0"
service:
name: nginx
version: 1.27.3
owner: infra/networking
image:
ref: docker.io/library/nginx:1.27.3
private: false
interfaces:
- name: http
type: http
port: 80
visibility: public
- name: https
type: http
port: 443
visibility: public
- name: metrics
type: http
port: 9113
visibility: internal
configuration:
schema: configuration/schema.json
runtime:
workload: service
state:
type: stateless
persistence:
scope: local
durability: ephemeral
dataCriticality: low
lifecycle:
upgradeStrategy: rolling
gracefulShutdownSeconds: 30
health:
interface: http
path: /health
scaling:
min: 2
max: 20
metadata:
tier: critical
edge: true
Key decisions
state.type: stateless— NGINX holds no local state; any instance can serve any requestdurability: ephemeral— no persistent storage neededupgradeStrategy: rolling— zero-downtime updates with gradual rolloutscaling: min 2, max 20— high availability with auto-scaling for traffic spikesvisibility: public— the HTTP and HTTPS interfaces are externally reachable