Cloudflare CDN and WAF in front of an origin
Put Cloudflare's CDN and WAF in front of an origin server
This example lives in the pulumi/examples repository. Check out just this directory to use it:
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examplesgit -C pulumi-examples sparse-checkout set cloudflare-ts-cdn-wafcd pulumi-examples/cloudflare-ts-cdn-wafPuts Cloudflare in front of an existing origin server: a proxied DNS record routes traffic through Cloudflare, a cache ruleset caches responses at the edge, and a rate-limiting ruleset protects the origin from abuse.
Prerequisites#
-
A domain already added to Cloudflare as a zone.
-
Create a Cloudflare API token with DNS and Zone WAF edit permissions, and export it:
Terminal window export CLOUDFLARE_API_TOKEN=<your-token>
Deploying the example#
-
Create a new stack:
Terminal window pulumi stack init dev -
Configure the zone and origin:
Terminal window pulumi config set zoneId <your-zone-id>pulumi config set origin origin.example.com -
Install dependencies and deploy:
Terminal window npm installpulumi up -
The proxied hostname is exported as
url:Terminal window pulumi stack output url
Cleaning up#
pulumi destroypulumi stack rm devRelated
TemplateCloudflare
Cloudflare Serverless Application
TemplateCloudflare