Coolify does not provide a native Convex template. The practical method is to deploy Convex as a Docker Compose resource, publish its backend, HTTP-action service and dashboard through Coolify’s proxy, then point your application at the resulting HTTPS endpoints.
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
This guide covers the deployment layout, domain and environment configuration, administrator-key setup, storage choices, sizing, security and the failure modes most likely to prevent a working installation.
As an Amazon Associate I earn from qualifying purchases.
Free tools Windows power users keep installed
One-click scans. No signup required.
What you are deploying
A self-hosted Convex installation has three logical parts:
- Backend: the Convex API and persistent application state. The local Docker defaults bind the API to
127.0.0.1:3210. - HTTP-action service: the endpoint used by Convex HTTP actions. Its local default is
127.0.0.1:3211. - Dashboard: the administrative web interface, exposed by the supplied deployment examples on port
6791.
Your frontend application is a separate client. It can run as another Coolify resource, on another host, or elsewhere on the internet, provided it can reach the public Convex URL and you keep the administrator key private.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Coolify supplies the server orchestration, reverse proxy, HTTPS domains and deployment interface. Convex supplies the containers and their configuration. Because there is no official Coolify template, you must provide a Compose file yourself.
Choose the Compose source before creating the resource
Official Convex Compose file
The official Convex backend repository includes a self-hosted Docker Compose file under self-hosted/docker. It is the better starting point when you want configuration maintained by the Convex project. Review the file at the version you intend to run before deploying; container names, variables and service definitions can change.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Fix the driver behind crashes, sound loss and screen glitches3Repair Windows errors before they cause bigger problemsCommunity Coolify Compose example
A community Coolify Compose example adds wiring intended for Coolify and includes a MinIO service for file storage. In that example, the instance name entered in Coolify is also used for the Convex instance and its PostgreSQL database. Treat this as an integration example rather than an official support statement: it has not been verified here, and its variable names may diverge from the current Convex release.
Do not mix files casually
Use one Compose file as the authoritative definition. Copying selected services or environment variables from a different example can leave the backend, dashboard and storage services referring to different hostnames. If you modify the file, record the changes so a future update can be reproduced.
Prerequisites and capacity
Server and DNS
- A server with Coolify installed and permission to create a Docker Compose resource.
- DNS names you control for the backend API, HTTP actions and dashboard. Use separate hostnames or clearly separated subdomains.
- Ports 80 and 443 reachable by the Coolify proxy so it can serve HTTP-01 challenges and HTTPS traffic.
- A method for persistent storage. Do not deploy a stateful Convex instance on an ephemeral disk.
Memory and CPU
A 2026 third-party sizing guide recommends at least 2 GB of RAM and 2 CPU cores, with 4 GB of RAM preferred when PostgreSQL runs on the same machine. These are planning figures, not a Convex or Coolify capacity guarantee. Actual requirements depend on concurrent clients, query load, file volume, database size and whether MinIO and PostgreSQL share the host.
| Workload component | Planning guidance | Qualification |
|---|---|---|
| Small installation | 2 CPU cores, 2 GB RAM | Third-party baseline; monitor during real use |
| Convex plus PostgreSQL on one host | 2 CPU cores, 4 GB RAM preferred | Third-party preference, not a published guarantee |
| Growing production workload | Measure and scale from observed usage | No official universal sizing number is established |
Backups and recovery
Decide where database and object-storage backups will go before accepting production data. The default backend storage is SQLite, while the official self-hosting README recommends a separate SQL database for production. A backup of only the container image or Compose file is not a backup of Convex data.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteRank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
Create the Compose resource in Coolify
- Open your Coolify project. Choose New Resource and select the Docker Compose resource type. There is no Convex template to select.
- Provide the Compose definition. Paste or import the official self-hosted Compose file, or use the community Coolify-oriented file if you specifically need its MinIO wiring. Keep the service names intact unless you also update every dependent command and reference.
- Set the instance name. The community example exposes an instance-name setting in the Coolify UI. In that example, the value names both the Convex instance and its PostgreSQL database. Choose a stable, DNS-safe value and do not change it casually after data exists.
- Review volumes. Confirm that the Compose definition maps persistent volumes for every stateful service it uses. Check that Coolify’s deployment directory and Docker volumes survive a container recreation.
- Save without deploying first. Use Coolify’s configuration view to check environment variables, service names and exposed ports. Correcting these before the first deployment is easier than repairing a partially initialized instance.
The official file uses localhost-oriented defaults. Those defaults are suitable for a local Docker network but not for a public deployment behind Coolify’s proxy.
Assign public domains and ports
In Coolify, add a public HTTPS domain to each service that must be reached from outside the Docker network. Route the domain to the service’s internal listening port, not to an arbitrary host port.
| Convex function | Container port | What uses it |
|---|---|---|
| Backend API | 3210 |
Convex client SDK traffic and administrative API calls |
| HTTP actions | 3211 |
Public HTTP actions served by Convex |
| Dashboard | 6791 |
Browser-based administration |
- Create a DNS record for the backend hostname and wait until it resolves to the Coolify server.
- In the Compose resource, open the backend service’s domain configuration and assign that hostname to port
3210. - Assign a second hostname to port
3211for HTTP actions. - Assign a dashboard hostname to port
6791. - Enable HTTPS through the Coolify proxy and verify that each certificate covers the exact hostname used by your application.
Do not expose the database, MinIO administration interface or internal container ports as public domains. Only the three Convex-facing services need public routing in the usual arrangement.
Replace localhost URLs with public origins
The Compose defaults assume the services are local. A browser or a frontend deployed outside the Compose network cannot use localhost to reach your server; in a browser, localhost means the visitor’s own computer.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Set the public URL values required by the exact Compose file and Convex version you are deploying. The values must use the HTTPS hostnames you assigned in Coolify, for example:
- the backend origin points to the hostname routed to port
3210; - the HTTP-action origin points to the hostname routed to port
3211; - the dashboard origin points to the hostname routed to port
6791, when the file requires one.
Third-party examples refer to variables named CONVEX_CLOUD_ORIGIN and CONVEX_SITE_ORIGIN. Their exact meaning and necessity are not established for every current release, so do not blindly copy those names: inspect the Compose file and the matching Convex self-hosting documentation for the version you selected. A misspelled or omitted origin commonly produces a deployment that starts successfully but fails when a remote browser or SDK connects.
Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
After changing these values, redeploy the resource. Confirm in the service logs that the containers start with the intended origins and that no value still contains 127.0.0.1, localhost or an old domain.
Deploy and verify the services
- Click Deploy in Coolify and follow the build and container-start logs.
- Wait for all required services to report running. A dashboard container starting does not prove that the backend or storage service is healthy.
- Open the backend HTTPS hostname in a browser or with an HTTP client. A response indicating that the service is reachable is useful; a proxy-generated 502 means Coolify cannot connect to the container port.
- Open the dashboard hostname. It may request an administrator key until you complete the next step.
- Test the HTTP-action hostname only after the backend is reachable, because action routing depends on the Convex deployment being initialized.
Keep the first deployment small and observable. Save the deployment logs, Compose revision and environment configuration in your operations notes so you can identify what changed if a later update fails.
Generate the Convex administrator key
The administrator key grants full administrative access to the self-hosted Convex instance. Generate it inside the running backend container rather than inventing a value.
- Open a shell for the deployed Compose resource using Coolify’s terminal feature, or connect to the server and enter the directory where that Compose project is managed.
- Run the command from the Convex deployment instructions:
docker compose exec backend ./generate_admin_key.sh
- Copy the resulting key once and store it in a password manager or another encrypted secret store.
- Open the dashboard on port
6791through its HTTPS domain and authenticate with the generated key. - If the command reports that the
backendservice does not exist, inspect the Compose service name. Do not rename the service merely to make the command work; adjust the command to the actual service name or follow the file’s own instructions.
Do not put the administrator key in a public repository, frontend JavaScript bundle, issue tracker, screenshot or shared chat. Anyone who obtains it can administer the entire instance.
Connect an application to the self-hosted instance
Configure the Convex project that should use this server in its local environment file. The required client-side settings are:
CONVEX_SELF_HOSTED_URL=https://your-backend-host.example
CONVEX_SELF_HOSTED_ADMIN_KEY=your-generated-admin-key
Replace the host and key with your own values. Keep the file out of source control; add it to the project’s ignore rules and use your deployment platform’s secret manager for production builds.
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
- Set
CONVEX_SELF_HOSTED_URLto the HTTPS domain routed to port3210, without replacing it with the dashboard or HTTP-action hostname. - Set
CONVEX_SELF_HOSTED_ADMIN_KEYonly where administrative operations genuinely need it. A public browser bundle must never receive this secret. - Restart or redeploy the application so its process reads the new environment values.
- Run a harmless query or mutation and verify the request reaches the self-hosted backend.
- If the application uses HTTP actions, test an action separately through the hostname mapped to port
3211.
A frontend hosted by Coolify can use the same backend domain as any other remote client. The two resources do not need to share a Docker network when the backend is published through HTTPS.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Storage: SQLite, PostgreSQL and MinIO
SQLite default
The backend stores state in SQLite by default. This minimizes setup and is convenient for evaluation or a small, single-host installation, but it couples the data to the backend’s persistent disk and does not provide the operational separation normally expected for production.
PostgreSQL for production
The official self-hosting README recommends a separate SQL database for production. A separate PostgreSQL service gives the database its own lifecycle and backup strategy, but it also consumes memory and CPU. The third-party sizing guidance prefers 4 GB RAM when PostgreSQL runs on the same host.
Use the database settings defined by your selected Compose file. Ensure the database volume is persistent, credentials are stored as secrets, and backups are tested by restoring to a separate environment. Changing from SQLite to PostgreSQL is a migration task, not simply a toggle; plan it separately from your first deployment.
MinIO and file storage
The community Coolify Compose example adds MinIO for file storage. If you use that file, treat MinIO data and credentials as production state. Do not publish its administrative endpoint just because the Convex services are public. If you use the official Compose file instead, follow the storage components and variables provided by that file rather than importing MinIO settings from a different example.
Security checklist before inviting users
- Use HTTPS for all three public Convex hostnames.
- Keep the administrator key in a secret manager and rotate access if it is exposed.
- Restrict dashboard access with Coolify, an identity-aware proxy or a network policy when your operating model permits it.
- Do not publish PostgreSQL, SQLite files, Docker sockets or MinIO administration ports.
- Use persistent volumes and verify that a container redeploy does not erase data.
- Back up the database and object storage independently, then perform a restore drill.
- Limit shell access on the Coolify host and keep the host and container images updated according to the release guidance for your chosen Convex version.
- Check browser developer tools for accidental exposure of
CONVEX_SELF_HOSTED_ADMIN_KEY. It belongs on a trusted server or administrative process, never in client-side code.
Troubleshooting by symptom
Coolify shows a 502 or connection refused
Confirm that the domain is mapped to the correct internal port: 3210 for the backend, 3211 for HTTP actions and 6791 for the dashboard. Then inspect the container logs and verify that the service is listening on the interface expected by the proxy. A domain aimed at a host port that the Compose file does not publish will fail even when the container is running.
Best Value
The dashboard loads, but the application cannot connect
Check CONVEX_SELF_HOSTED_URL first. It must be the public backend hostname, not localhost, the dashboard URL or the HTTP-action URL. Confirm that the certificate is valid from the application environment and redeploy the application after changing its environment file.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →HTTP actions fail while queries work
Verify the separate port-3211 domain and the public origin value used for HTTP actions. A backend domain mapped only to port 3210 does not automatically route action requests.
The admin-key command cannot find the service
List the Compose services and compare their names with the command’s backend argument. The command is service-name specific. Use the actual backend service name from the selected Compose file, then run the key-generation script supplied by that file.
Data disappears after redeployment
Inspect the volume mappings before starting another deployment. SQLite, PostgreSQL and MinIO each require persistent storage appropriate to the Compose definition. If the deployment uses an ephemeral directory, stop and restore from a known backup before accepting more data.
Origin or CORS errors appear in the browser
Look for stale localhost or old-domain values in the Compose environment. Make sure the browser is using the same HTTPS hostnames configured in Coolify and that the exact origin variables required by your Convex release are present. Because third-party examples use variable names that may not match every release, compare them with the current Compose file rather than guessing.
Official Compose versus community Coolify wiring
| Consideration | Official Convex Compose | Community Coolify Compose |
|---|---|---|
| Primary advantage | Maintained with the Convex self-hosting project | Includes Coolify-oriented examples and MinIO wiring |
| Coolify-specific setup | You may need to add domain and proxy configuration yourself | Some Coolify settings are demonstrated directly |
| Support confidence | Closer to the project’s documented deployment path | Community material; not an official Coolify guide |
| Variable compatibility | Use variables shipped with the selected Convex version | Verify every variable before copying; names may be stale |
Choose the official file when long-term maintenance and version alignment matter most. Choose the community file only when its extra storage or Coolify wiring solves a specific need and you are prepared to validate it against the current Convex release.
Version and maintenance cautions
Self-hosted Convex deployment instructions are version-sensitive. A Docker guide published roughly 225 days before the October 14, 2026 review may contain names that have since changed. Before upgrading, compare the new official Compose file with your running definition, read its migration notes, back up all state and test the update on a disposable instance.
There is no published statistic establishing Convex self-hosting or Coolify adoption, so capacity decisions should come from your own traffic, resource metrics and backup requirements rather than an adoption claim.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Recommended Free Tools




