Skip to content

Requirements

This page lists the infrastructure and runtime prerequisites for running Inventorix in production. The recommended deployment path is the official Docker image, which satisfies all runtime requirements out of the box.

RequirementMinimumNotes
PHP8.3composer.json requires ^8.3; the official Docker image ships PHP 8.4
PHP extensionspdo_mysql, redis, intl, gd, opcache, pcntl, zipAll installed in the official image
Composer2.xOnly required for non-Docker installs

Inventorix is tested against MySQL and MariaDB. The Laravel configuration ships explicit mysql and mariadb driver blocks in config/database.php. The .env.example shows MySQL as the intended production connection.

RequirementValue
Supported enginesMySQL, MariaDB
Default port3306
Character setutf8mb4
Collationutf8mb4_unicode_ci

Redis is required in production for:

  • Queue backend — Horizon uses Redis to manage and monitor queued jobs (set QUEUE_CONNECTION=redis).
  • Cache — set CACHE_STORE=redis for shared cache in a multi-replica setup.
  • Sessions — optionally set SESSION_DRIVER=redis.
RequirementValue
Redis client driverphpredis (default) or predis
Default host127.0.0.1
Default port6379

The default .env.example values use the database driver for cache, sessions, and queues — this is sufficient for a single-replica deployment but Redis is strongly recommended for performance and for Horizon to function correctly.

Inventorix stores uploaded files (asset invoices and other attachments) on the configured filesystem disk. For production, an S3-compatible object store is recommended.

Environment variablePurpose
FILESYSTEM_DISKSet to s3 for object storage, local for local disk
AWS_ACCESS_KEY_IDAccess key
AWS_SECRET_ACCESS_KEYSecret key
AWS_DEFAULT_REGIONBucket region
AWS_BUCKETBucket name
AWS_ENDPOINTOverride endpoint for non-AWS providers (MinIO, Tigris, etc.)
AWS_USE_PATH_STYLE_ENDPOINTSet true for path-style endpoint (required by MinIO and some S3-compatible services)

A working mail provider is required for warranty expiry notifications and other system emails.

Inventorix ships drivers for:

  • SMTP (MAIL_MAILER=smtp)
  • Postmark (MAIL_MAILER=postmark — via symfony/postmark-mailer)
  • Resend (MAIL_MAILER=resend — via resend/resend-php)
  • Postal (MAIL_MAILER=postal — via synergitech/laravel-postal)
  • Log (MAIL_MAILER=log — development only; writes to the application log)

Set MAIL_FROM_ADDRESS and MAIL_FROM_NAME in all cases.

The official Docker image at noixdev/inventorix bundles PHP 8.4, all required extensions, Composer dependencies, and compiled frontend assets in a single image. It is the only supported production deployment method documented here.

See Docker deployment for setup instructions.