Vexon Commerce

What you need

The server, services and accounts Vexon Commerce runs on, and what each one is for.

InstallingLast checked

The server

A Linux server or VPS with Docker installed, and a domain name you can point at it. Vexon Commerce is one app: the storefront, checkout, admin, API and staff app connection all run in the same container, on port 3000. It runs on Node.js 22, which is inside the image, so you don't need Node on the server itself.

In front of it you need a reverse proxy with HTTPS, such as Caddy or Nginx. It must pass the Host, X-Forwarded-Proto, X-Forwarded-For and X-Real-IP headers through unchanged.

The services it uses

These can run on the same server, in their own containers, or somewhere else.

PostgreSQL

Your products, orders and customers live here. The database user must be allowed to create the pg_trgm and pgcrypto extensions, which the app adds on its first start.

Meilisearch

Powers instant, typo-tolerant search. The shop still runs without it, but search falls back to slower database matching.

S3-compatible storage

Holds product photos and uploads. Any S3-compatible service works. The app creates the bucket on its first start if it doesn't exist.

imgproxy

Resizes photos on the fly, so pages stay quick on phones. The image is built to send photos through it at /img on your media address.

Email sending

For order emails and password resets. A new shop sends through Amazon SES at first. Once you're signed in, you can switch to any SMTP service in Settings › Email.

A scheduler

Something that can make an HTTP request every minute, such as cron with curl. Emails and other background jobs only go out when it calls the app.

Optional extras

  • Stripe, to take card payments once checkout is switched on.
  • An OpenAI API key, for the AI helper.
  • A separate marketing email account, for newsletters and other marketing emails.

No sizes are set in stone. As a guide, imgproxy is happy with 1 GB of memory, and search runs well on 2 cores and 1 GB.

Was this helpful?