Foodomaa Docs
Main site Buy — $299
Documentation menu

Server Requirements

A standard LAMP or LEMP server is enough for a launch-stage platform. The exact PHP version and extension list for your build are in the package README; the list below is the baseline to prepare.

Server

ResourceMinimumComfortable
CPU2 vCPU4 vCPU
RAM2 GB4–8 GB
Disk20 GB SSD40 GB SSD or more
OSUbuntu 22.04 / Debian 12 / AlmaLinux 9Any current LTS Linux
Web serverNginx, Apache or LiteSpeedNginx or LiteSpeed

Image uploads, logs and database growth are the usual reasons a small server runs out of disk. Plan backups separately from the live disk.

PHP

Use a current PHP 8.x release supported by your build. The following extensions are normally required:

ExtensionWhy
BCMathMoney and commission calculations
Ctype, JSON, Mbstring, Tokenizer, XMLFramework and request handling
cURL, OpenSSLPayment gateways, maps, push and SMTP APIs
PDO / pdo_mysqlDatabase connection
Fileinfo, ZIPUploads and package handling
GD or ImagickImage resizing and thumbnails
IntlCurrency and locale formatting

Set memory_limit to at least 256 MB, upload_max_filesize and post_max_size to at least 20 MB, and max_execution_time to 120 seconds for installs and imports.

Database

  • MySQL 8.0+ or MariaDB 10.4+
  • A dedicated database and user with full privileges on that database
  • utf8mb4 character set and collation
  • Daily backups, stored off the server

Domain, SSL and email

  • An A record for the root domain (and ideally www) pointing at the server.
  • A valid SSL certificate active before the installer runs. Mixed content breaks logins, maps and payments.
  • SMTP credentials or a transactional email provider. Test order and password-reset mail before launch.
  • If you use push notifications, a Firebase project and the matching app configuration.

Cron and queues

Most Foodomaa builds use a scheduler for expiring orders, settlements and notifications. Add the scheduler entry for the web user and confirm it runs every minute. If your build uses queued jobs, run a queue worker under Supervisor or systemd and restart it after every deploy.

Payment gateways

Gateway support depends on your build and region. You need a merchant account, the correct currency and a public HTTPS callback URL. Test in sandbox before switching to live keys. See Payments.

Do not use 777 permissions. Make only the storage, cache and upload directories writable by the web user, and keep the rest read-only.