Provision S3-compatible object storage directly from Ploi Cloud. Create storage services, manage buckets and access credentials, and connect them to your applications without leaving the platform.
Object storage is powered by UpCloud and available in multiple regions. Each service comes with its own endpoint, and you can create multiple buckets and access users per service. Usage data (total objects and size) syncs automatically and updates in real time via WebSocket.
Custom domains are supported, and deletion is protected by a name-confirmation dialog to prevent accidental data loss.
Temporarily stop your application to save costs without losing any data or configuration.
Before: To stop an application you had to delete it, losing all configuration, secrets, and services. After: Suspend scales all deployments to zero replicas while preserving your data, volumes, and settings. Resume restores everything and triggers a deployment using the last successful build.
Clone an existing application from the application list dropdown. All configuration, secrets, services, and volumes are copied to a new application with a unique name and URL.
Useful for creating staging environments, testing configuration changes, or spinning up a second instance of a proven setup.
Connect a Google Chat webhook to receive deployment and application notifications alongside existing Slack, Discord, email, and webhook channels.
Statamic applications can now use the full-page static caching strategy. When you set STATAMIC_STATIC_CACHING_STRATEGY=full, the generated Dockerfile automatically configures NGINX to serve cached pages from the /static/ directory before hitting PHP.
An environment variable warning now appears when this strategy is configured, linking to the documentation for setup guidance.
Statamic 6 is now available as an option when creating new applications. It requires PHP 8.3 or higher, which is automatically enforced during setup.
Deployment logs now show timing information for each build step. Each line includes a timestamp, the time spent on that step, and the total elapsed build time. This makes it easy to identify which steps are slow and optimize your build process.
Applications using the imagick PHP extension now automatically get AVIF encoding and decoding support. The libheif encoder plugin and ImageMagick extra coder modules are installed during the build, so image processing libraries like Intervention Image and Statamic Peak can generate AVIF files out of the box.
All platform emails have been redesigned using the Envelop templating system. This includes the password reset email, which now matches the rest of the design. The new templates provide better rendering across email clients.
Teams with account credits no longer see expired trial banners or billing setup prompts. If your team has credits, you can continue using the platform without adding a payment method until the credits run out.
The volume mount path input now clarifies that paths are relative to /var/www/html unless a full absolute path is provided. The placeholder has been updated to reflect this (e.g., /storage/app instead of /var/www/html/storage/app).
Node.js applications now use fpm-nginx instead of the discontinued NGINX Unit runtime. This resolves build failures that occurred when using PHP 8.5 (the new default) since NGINX Unit images were only available for PHP 8.2 and 8.3.
Wildcard domains can no longer be activated before the application has been deployed at least once. Previously, the certificate creation would fail silently because the namespace didn't exist yet.
SFTP services no longer hang during initialization when NFS volumes are mounted. The ChrootDirectory directive was removed in favor of ForceCommand internal-sftp to avoid touching all mounted filesystems on startup.
The container registry secret is now copied after the namespace is created, not before. This prevents 'not found' errors during the first deployment of a new application.
The API endpoint for restarting application services now correctly passes the required application argument, fixing a server error when calling the endpoint.
Teams where the owner account has been deleted no longer cause errors when generating invoice email addresses.