Skip to content
Vimonto Deploy

Statamic hosting

Statamic, ready on every deploy

Statamic gets its own preset: Nginx and PHP-FPM set up for Laravel, a production .env written for you, and a deploy script that warms the Stache before the release goes live, so the first visitor after a deploy never waits for it.

From repository to production in three steps

  1. 1

    Create a server

    At Hetzner Cloud, DigitalOcean, Vultr, Akamai, AWS or Google Cloud, or on any Ubuntu 24.04 VPS. Choose PHP 8.1 to 8.5 and a database if your site uses one; Redis and Node.js come with it.

  2. 2

    Create a Statamic site

    Pick the Statamic preset and your repository. The site gets a .env with a new APP_KEY, the database credentials and Redis for cache and sessions, plus a free on-deploy.link address.

  3. 3

    Push

    Each push builds a new release: Composer, your frontend build, migrations, optimize and stache:warm, then an atomic switch.

Deploy script

The default Statamic deploy script

The Laravel steps plus please stache:warm, all in the new release before it goes live. It is plain Bash, runs with set -e, and you can change it in the browser, for example to add static:warm for static caching.

Deploy script — Statamic default
$VIMONTO_COMPOSER install --no-dev --no-interaction --prefer-dist --optimize-autoloader

if [ -f package.json ]; then
    if [ -f package-lock.json ]; then npm ci; else npm install; fi
    npm run build
fi

$VIMONTO_PHP artisan storage:link --force
$VIMONTO_PHP artisan migrate --force
$VIMONTO_PHP artisan optimize
$VIMONTO_PHP please stache:warm

Site features

Every Laravel switch, for Statamic too

  • Scheduler

    A cron entry runs schedule:run every minute in the live release, for scheduled entries and your own commands.

  • Horizon or queue workers

    Run queued jobs, such as image processing or form emails, under Supervisor. Workers restart after every deploy.

  • Maintenance mode

    Runs artisan down with a bypass link for you. The state lives in the shared storage/, so it survives deploys.

  • Password protection

    Put a staging site or client preview behind a username and password, without touching your code.

Content edited on the server

Statamic stores entries as files. Each zero-downtime deploy starts from a fresh clone of your branch, so content saved in the Control Panel on the server must be committed to your repository, for example with Statamic's Git integration, before the next deploy. Uploaded assets in storage/ are shared between releases and stay.

Prefer to keep it simple? Switch the site to in-place deploys: one release is updated in place, which is faster, at the cost of rollbacks.

Zero-downtime and in-place deploys

Statamic hosting questions

Does Statamic need a database?

Not by default: flat-file Statamic runs without one. Leave Connect a database off, or keep it for Statamic with Eloquent driver, users in the database or your own tables.

Can I use Horizon, Reverb or Inertia SSR with Statamic?

Yes. Statamic sites get the same features as Laravel: Scheduler, Horizon, Reverb, Pulse, Inertia SSR, Nightwatch, maintenance mode and password protection.

How do I run Statamic commands on the server?

From the site's Commands page, which runs a command in the live release, or in the browser terminal. In the deploy script, use $VIMONTO_PHP please … so it runs with the site's PHP version.

What does it cost?

The free plan covers 1 server and 3 sites with every feature. Premium is €15 per month per organization, without limits. Your servers are billed by your cloud provider.

Your next deploy could be live before your coffee is.

Create an organization, connect a server and push. That is all.