Skip to main content

Use selected remote infrastructure

partialRemote connects selected background infrastructure to remote services. Application processes and the primary stores remain on your machine. Complete first installation for a new host. Do not repeat first setup to change an existing endpoint.

What runs where​

LocalRemote
BFF, Account, backend and .NET applicationsKafka broker1/2/3
PostgreSQL, SeaweedFS/S3, OpenSearch, DragonflyClamAV
Application proxy, authorization, encryption keysCollabora
Mailbox data and provider connectionsTika and Qdrant

The laptop setup does not create Coolify services. An operator must prepare endpoints, authentication, network access, and transfer of existing remote-bound state. Remote services do not need general SSH access to your machine.

Before the change​

Preserve configuration, database, files, and key backups separately. Retain local volumes. Obtain all three Kafka advertised endpoints, expected cluster ID, separate app/admin credentials, scanner/extractor tokens, Collabora origin, and Qdrant API key.

All Kafka endpoints must be reachable from local containers. Plain SASL is allowed only over the supported encrypted Tailscale path. Other remote Kafka transport requires TLS. Check HTTPS certificates and exact service hostnames.

Keep PostgreSQL, S3, OpenSearch, and Dragonfly local settings. Fill the root remote block. Coolify variable names do not resolve as remote passwords in a laptop .env.

Prepare the Office callback​

Remote Collabora reads the original file through the local BFF's restricted, authenticated WOPI routes. Browser assets and the document WebSocket remain on the BFF origin. The renderer must reach the local HTTPS callback and trust its certificate.

Allow only the selected renderer source and short-lived file-bound read grants. Keep admin and conversion endpoints private. Do not weaken callback restrictions to repair an empty preview. Message reading and original download are separate from renderer availability.

Change an existing installation​

  1. Inspect bash devstack.sh status. Agree on downtime and one full active instance before cold bootstrap.
  2. With original settings, run bash stopDevServer.sh. Volumes remain.
  3. Have the operator transfer and read back existing Kafka/Qdrant state with application writers stopped.
  4. Set ECS_DEPLOYMENT_MODE=partialRemote, ECS_REMOTE_SIMULATION=false, and the required remote fields. Run bash devstack.sh validate.
  5. Run bash restartDevServers.sh to resume saved modes, or add --prod to explicitly choose production.

Missing selectors preserve full-local behavior. partialRemote with simulation true uses real local services. Simulation does not check remote readiness or reduce local capacity.

The local stop does not stop real remote Coolify services. Retained local replacement volumes can become stale after remote writes. Before returning to fulllocal / false, check freshness and complete any required reverse transfer. Retain inactive remote fields if useful.

Reset is unsupported

Remote mode rejects reset and cleanup, including simulation. Remote data deletion is unsupported. Do not switch to local placement to bypass the guard. Local reset, --reset, and down -v can delete data.

Check the result​

Inspect status, Account login, mailbox reading, search, and confirmation of a permitted change. For Office, open an actual document page. For knowledge, check file processing, retrieval, and original download. Container health alone does not prove the full workflow.

For Kafka identity, metadata, or role failures, check remote configuration. There is no silent local fallback. For Office failures, inspect BFF-to-renderer callbacks. Scanner failures need normal recovery without releasing unchecked files. Exclude secrets and configuration dumps from reports.