OpenResty
OpenResty is available in the NetActuate Marketplace as a one-click, open-source appliance you can deploy into any NetActuate PoP. Programmable nginx + LuaJIT edge, cache and API gateway for media, on your own VM. It is grouped under the Media & Streaming category.
What It Does
OpenResty is nginx bundled with LuaJIT and the lua-nginx-module, turning the world's most deployed web server into a fully programmable HTTP edge. Build caching, origin-shielding, request routing, URL signing, header rewriting, auth and other edge logic in Lua, right in the request path, with nginx-class performance.
Key features
- nginx core + LuaJIT + lua-nginx-module: scriptable access/rewrite/content phases
- Built-in HTTP proxy cache (proxy_cache) to shield and accelerate an origin
- Ships a ready config: a landing/instructions page at /, a LuaJIT demo at /lua-demo, a health probe at /healthz, and a cached reverse-proxy at /cache/
- Runs the official, unmodified openresty/openresty container
- First boot runs openresty -t and fails closed on an invalid config
- Simple seeded configuration: one HTTP port and one optional upstream origin, no web console to manage
Use cases
- A programmable caching / origin-shield tier in front of a media origin or API
- Edge logic for media delivery: URL signing, token auth, A/B routing, rewrites
- A lightweight API gateway or reverse proxy you extend in Lua
Why run it on the NetActuate edge Running OpenResty in a PoP near your audience serves cacheable content locally, cuts round-trips and egress back to your origin, and puts programmable edge logic on infrastructure you control.
Deployed from the NetActuate marketplace, OpenResty boots pre-configured: set the published HTTP port and, optionally, an upstream origin to proxy and cache at /cache/. There is no login to configure; the server answers on the instance IP as soon as the instance is up. Leave the origin blank and /cache/ caches the appliance's own landing page so you can confirm caching works, then point it at your backend and extend the shipped nginx.conf with your own Lua.
Vendor and Project
OpenResty is an open-source project, offered here under the Open Source listing with best-effort community support.
- Project home: openresty.org
NetActuate supports the underlying infrastructure. Application-level support follows the listing SLA class (open-source, best effort).
Sizing
| vCPU | RAM | Disk | |
|---|---|---|---|
| Minimum | 1 | 2 GB | 20 GB |
| Recommended | 2 | 4 GB | 50 GB |
No VPU (hardware acceleration) is required for this appliance. Choose a size at deploy based on your expected load.
Configuration Fields
When you deploy, you provide these fields. They are written into the appliance at first boot.
| Field | Required | Default | Notes |
|---|---|---|---|
| HTTP port | No | 8080 | Port the server listens on, published on the instance IP (default 8080). The container always listens on 8080 internally. |
| Upstream origin host | No | none | Optional upstream origin to proxy and cache at /cache/, as host or host:port (e.g. origin.example.com or 10.0.0.10:8080). Leave blank to cache the built-in landing page until you wire up an origin. |
Using the Appliance
Programmable edge in minutes
- Confirm the server is up. Browse to http://YOUR_VM_IP:8080/ . You will see the built-in landing/instructions page (HTTP 200), and http://YOUR_VM_IP:8080/healthz returns ok. A live LuaJIT demo is at /lua-demo.
- Cache an origin. Set the mkt_origin_host seed field to your backend (for example origin.example.com or 10.0.0.10:8080) and, if you want a different port, mkt_http_port (default 8080). Requests to http://YOUR_VM_IP:8080/cache/<path> are then served from, and cached in front of, your origin (inspect the X-Cache-Status header).
- Add your own edge logic. Edit /opt/openresty/nginx.conf on the instance and add Lua handlers (content_by_lua_block / access_by_lua_block), then restart the mkt-openresty service. There is no web console.
Exposure posture: the appliance serves plain HTTP on the published port. Put a TLS-terminating proxy and access control in front before exposing it on an untrusted network.
FAQ
Is there a software license fee? No. OpenResty is open source and free to run. You pay only for the NetActuate infrastructure and bandwidth.
Which port does the appliance serve on?
The primary service is published on port 8080 by default; see the configuration fields for any adjustable ports.
Who supports it? NetActuate operates the underlying infrastructure. The application itself is community-supported open source (best-effort SLA class).
Version and Changelog
| Version | Status | Released |
|---|---|---|
| 1.31.1.1 | Current (default) | 2026-07-14 |
Deploy
- Deploy in the portal: Deploy OpenResty
- View the listing: portal.netactuate.com/platform/marketplace/l/openresty
- Public listing: netactuate.com/marketplace/openresty
Need Help?
Contact support@netactuate.com or open a support ticket from the portal.