Skip to main content

imgpush

imgpush is available in the NetActuate Marketplace as a one-click, open-source appliance you can deploy into any NetActuate PoP. Minimal self-hosted image upload with on-the-fly resizing and a small web UI. It is grouped under the Media & Streaming category.

What It Does

imgpush is a minimal, self-hosted image upload and on-the-fly resizing service, an open-source alternative to Imgur-style hosting that you run on your own VM. Upload an image and get back a short URL, then request it at any width, height or format directly from the URL (for example /<id>.png?w=640) and imgpush renders and caches the variant on demand.

Key features

  • Simple upload API plus a small built-in web upload form served at /
  • On-the-fly resizing and format conversion from URL parameters, with a rendered-variant cache
  • Configurable allowed CORS origins, maximum upload size, and naming strategy
  • Optional API key, upload rate limits, autocrop and background removal, and an optional NSFW filter (all off by default)
  • No database and no login in the default posture: just a stateless service over two persistent volumes

Use cases

  • A lightweight image backend for a web or mobile app that needs upload plus responsive/thumbnail delivery
  • Self-hosted, privacy-preserving image sharing you fully control
  • An origin image service behind a CDN or the NetActuate edge

Why run it on the NetActuate edge Running imgpush in a PoP near your users shortens the path for both uploads and the on-the-fly resized delivery, and keeps your originals and your users' data on infrastructure you own.

Deployed from the NetActuate marketplace, imgpush boots ready to serve from your seeded values: pick the published HTTP port, the allowed CORS origins and the max upload size. The web upload form is available at http://<instance-ip>/ immediately. The open upload endpoint has no authentication by default; restrict ALLOWED_ORIGINS (and optionally set an API key or enable the NSFW filter) before exposing it publicly.

Vendor and Project

imgpush is an open-source project, offered here under the Open Source listing with best-effort community support.

NetActuate supports the underlying infrastructure. Application-level support follows the listing SLA class (open-source, best effort).

Sizing

vCPURAMDisk
Minimum12 GB20 GB
Recommended24 GB50 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.

FieldRequiredDefaultNotes
HTTP portNo80Published HTTP port for the imgpush web upload form and image API (default 80; maps to the container's port 5000).
Allowed CORS originsNo*CORS origins allowed to upload/consume. Use * for any origin, or a comma-separated list (e.g. https://app.example.com,https://cdn.example.com). Restrict this before exposing the appliance publicly.
Max upload size (MB)No16Maximum accepted upload size in megabytes (default 16).

Using the Appliance

Deploy in minutes

  1. Open the upload form. Browse to http://YOUR_VM_IP/ and upload an image; you get back a JSON response with the image filename.
  2. Fetch on the fly. Request the image at any size or format from the URL, e.g. http://YOUR_VM_IP/<filename>?w=640 for a 640px-wide render (cached after the first hit).
  3. Automate it. POST multipart form-data with a file field to http://YOUR_VM_IP/ from your app to upload programmatically.

Exposure posture: the service serves plain HTTP with an OPEN upload endpoint and no login by default. Set the allowed CORS origins (and optionally an API key or the NSFW filter), and put TLS termination on a real hostname in front, before exposing it publicly.

FAQ

Is there a software license fee? No. imgpush 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 80 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

VersionStatusReleased
latest-20260714Current (default)2026-07-14

Deploy


Need Help?

Contact support@netactuate.com or open a support ticket from the portal.