Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Coolify uses Traefik as its default integrated reverse proxy and offers Caddy as an alternative. For most installations, leave Traefik selected, point DNS at the server, open ports 80 and 443, attach a correctly formed domain to each resource, and redeploy. Choose Caddy when you need a Caddy-specific feature or already operate Caddy confidently; switching proxies causes a short outage for every route on that server and requires your custom configuration to be recreated in the new syntax.

What the Coolify proxy does

A proxy is the public entry point for applications, databases with web interfaces, dashboards and other resources running on a Coolify server. It accepts requests on standard web ports, selects a destination from the hostname and path, forwards the request to the right container port, and terminates or obtains TLS certificates. Coolify generates most of this routing from the domains and ports you enter on a resource.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Traefik is the default integrated proxy and the one used by the Coolify core team in production. Caddy is a supported integrated alternative. Their generated labels, configuration files and extension syntax are different, so a Traefik customization cannot simply be copied to Caddy.

Characteristic Traefik Caddy
Coolify status Default integrated proxy; broadest Coolify documentation Integrated alternative with less Coolify-specific documentation
Container and service Coolify-managed Traefik service lucaslorentz/caddy-docker-proxy, exposed as coolify-proxy
Configuration location Main compose: /data/coolify/proxy/docker-compose.yml; dynamic files: /data/coolify/proxy/dynamic/ Proxy files under /data/coolify/proxy/caddy/; dynamic snippets: /data/coolify/proxy/caddy/dynamic/
Dynamic syntax Traefik YAML objects such as routers, services, middlewares and TLS options Caddyfile-style *.caddy snippets and Caddy labels
Transport HTTP and HTTPS through ports 80 and 443 Ports 80 and 443, plus UDP 443 for HTTP/3
Best default Use unless a Caddy-specific requirement gives you a reason to change Use when existing Caddy expertise or a required Caddy feature outweighs migration work

Prerequisites before changing proxy settings

Every public route depends on the same chain: a hostname resolves to the resource server, the server accepts web traffic, the proxy has a generated route, and the destination container is reachable on the declared port. A failure anywhere in that chain looks like a proxy problem, so verify these conditions first.

#1 Best Overall
Sale
Compressed Air Duster,130000RPM Super Power Cordless Air Duster,Rechargeable Brushless Blower,3 Gear Adjustable Blower with LED Light,Dust Remover for Computer/House/Outdoor/Car
  • Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
  • With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
  • Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
  • Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
  • Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
  • DNS: Create an A or AAAA record (as appropriate for your deployment) for the hostname and point it to the server running the Coolify resource. A record pointing to another node, an old address or a load balancer will never reach this proxy.
  • Firewall: Permit inbound TCP 80 and TCP 443 in the host firewall and any cloud security group. Caddy can also use UDP 443 for HTTP/3, but TCP 443 remains necessary for ordinary HTTPS clients.
  • Application listener: Confirm that the process listens on the container port you will declare in Coolify. Visitors still connect to public HTTPS port 443; the internal target port can be 3000, 8080 or another value.
  • Network attachment: The proxy and destination container must share a Docker network. A route can be generated correctly and still fail if the containers cannot resolve or reach one another.
  • Domain data: Decide the exact hostname, protocol, optional path and target port. A typo in any of these values creates a route to the wrong place.

For certificate issuance with an HTTP challenge, port 80 must be reachable from the public internet. If port 80 cannot be exposed, or you need a wildcard certificate, use an ACME DNS challenge and give the DNS provider token only the zone permissions required to create and remove challenge records.

Select and inspect the proxy in Coolify

  1. Sign in to Coolify and open Servers.
  2. Select the server that runs the resource.
  3. Open Proxy. Review the selected proxy, its status and the generated configuration before editing anything.
  4. Keep Traefik for the widest documentation and default behavior unless a Caddy-specific capability or your existing Caddy operational knowledge is the reason to switch.

The Proxy page is the authoritative control surface. Coolify warns that edits made directly on disk are not synchronized back to the interface and can be overwritten when the proxy starts or restarts. Use the dashboard’s generated configuration and restart controls instead of treating files on the host as a permanent source of truth.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Publish an application through either proxy

The resource-domain workflow is shared conceptually by Traefik and Caddy, although the labels generated behind the scenes differ.

Rank #2
EVEO® Screen Cleaner Spray Kit (Streak-Free) TV Screen Cleaner for Smart TV, Lcd, LEd, Oled | Computer Screen Cleaner Spray and Wipe Microfiber Cloth - TV, Monitor, Laptop, iPad, Car - 6.7oz 1 Pack
  • Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
  • Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
  • Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
  • Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
  • Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
  1. Open the application or service in Coolify and find its domain settings.
  2. Add the complete hostname, such as app.example.com. Select http:// or https:// according to the exposure you intend to provide.
  3. Set a target port when it differs from the application’s configured default. The target is the container port, not the public port a visitor types in a browser.
  4. Save the resource and redeploy it. Redeployment causes Coolify to regenerate labels and reconnect the container to the proxy’s Docker network.
  5. Request the hostname over HTTP and HTTPS. Check that the response comes from the intended application, that the certificate names the hostname, and that any HTTP-to-HTTPS redirect behaves as designed.

Do not use a path or port merely because it is open on the host. The proxy must be able to reach the declared port inside the destination container, and the application must actually bind there rather than only to an inaccessible loopback interface.

Configure Traefik

How Coolify’s Traefik integration is arranged

Coolify generates Traefik routers from resource domains and container ports, connects the proxy to the Docker networks it needs, and configures automatic TLS through the letsencrypt resolver. The main compose definition is stored at /data/coolify/proxy/docker-compose.yml. File-provider material is stored under /data/coolify/proxy/dynamic/ and mounted inside the proxy at /traefik/dynamic/.

Most deployments do not need to edit Traefik directly. Resource domains, protocols and ports in the Coolify interface are safer than hand-editing generated routers because Coolify can regenerate them whenever a resource is redeployed.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
BladeHawks RGB Gaming Mouse Pad Extra Large Extended 31.5x12 Inch-Black | LED mouse pad with 14 lighting modes, covers keyboard & mouse, anti-slip rubber base, waterproof surface, USB powered
  • 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
  • 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
  • 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
  • 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
  • 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.

Change the main compose configuration

When a change genuinely belongs to the proxy service itself, open Servers → select the server → Proxy → Configuration and edit the generated compose configuration there. Save the change and restart the proxy from the dashboard. A restart briefly removes the entry point for every route on that server, so schedule it when a short interruption is acceptable and verify the proxy returns to a running state before testing applications.

Add reusable dynamic configuration

Use Proxy → Dynamic Configurations for settings that should be loaded by Traefik’s file provider rather than baked into the main compose service. Appropriate uses include reusable middleware, custom certificates, authenticated routes, dashboards and load-balancer services. Keep each file’s routers, services, middlewares and TLS references internally consistent, then save it through the dashboard and inspect the proxy logs for parsing errors.

Expose a Traefik dashboard safely

Give the Traefik dashboard a dedicated hostname. Enable secure dashboard mode, create an authenticated HTTPS route in dynamic configuration, and test it from an account that is expected to have access. Never expose insecure mode publicly. Do not put the dashboard at /api on the same hostname used by the Coolify dashboard; the two interfaces can conflict and create an unintended administrative exposure.

Rank #4
Sale
Vaydeer Wrist Rest for Keyboard and Mouse, Computer Ergonomic Wrist Support Pad, Soft Memory Foam Arm Cushion for Desk, Palm Hand Office Laptop Typing
  • 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
  • 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
  • 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
  • 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
  • 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.

Define a load-balancer service

A Traefik load-balancer definition belongs in a dynamic YAML file. Define the public domain, a router, a service, the upstream server URLs and, when useful, a health check. Every upstream URL must be reachable from the coolify-proxy container, not merely from the host shell. After loading the file, make a request through the public hostname, stop one upstream to confirm failover, restore it, and review logs for connection or health-check errors.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Configure Caddy

Understand Caddy’s generated files and labels

Coolify runs lucaslorentz/caddy-docker-proxy as coolify-proxy. It listens on TCP ports 80 and 443 and can serve HTTP/3 through UDP 443. Caddy discovers Coolify-generated Docker labels and builds its routing from them. Its files live below /data/coolify/proxy/caddy/, with dynamic snippets in /data/coolify/proxy/caddy/dynamic/.

Coolify-generated files such as Caddyfile, coolify.caddy and the default request handler are read-only in the dashboard. Treat them as generated output. Custom behavior belongs in the supported Caddy configuration area or in a dynamic *.caddy snippet.

Best Value
Sale
Under Desk Cable Management Tray No Drill, Metal Mesh Cable Management Under Desk with Clamp Mount, 2 Hole Cable Tray with Wire Management and Cord Organizer for Home Office Standing Desk
  • 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
  • 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
  • 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
  • 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
  • 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.

Add a dynamic Caddy snippet

  1. Open the server’s Proxy page and choose the Caddy configuration or dynamic-configuration area.
  2. Create a file with a .caddy suffix under /data/coolify/proxy/caddy/dynamic/.
  3. Write Caddyfile syntax for the hostname, handlers, headers, redirects or upstreams you need. Ensure the upstream name and port are reachable from coolify-proxy.
  4. Save the snippet, reload or restart the proxy as required by the dashboard, and inspect the Caddy logs for syntax errors.
  5. Redeploy affected resources so Caddy receives the current labels, then test both the normal request and any special behavior such as a redirect or header.

Advanced Caddy modules may require a custom image or changes to the proxy compose configuration. Plan that as an image-and-deployment change, not as a small label edit. Caddy labels and syntax are not interchangeable with Traefik routers, services or middleware; recreate the behavior in Caddy’s model.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Switch from Traefik to Caddy, or back

Switching is a server-wide operation. Every public route on that server is unavailable while the old proxy is stopped and the replacement is starting. Custom middleware, certificates, dashboard routes, load balancers and other settings from the old proxy do not translate automatically.

  1. Open Servers → select the server → Proxy and record any custom settings you must recreate, including domains, certificates, authentication and upstream definitions.
  2. Stop the current proxy and wait until its status reads Proxy Exited. Do not start the replacement while the old process is still holding the ports.
  3. Choose Switch Proxy, select Traefik or Caddy, and confirm the change.
  4. Start the new proxy and wait for its status to show it is running and listening on the expected ports.
  5. Recreate custom settings in the new syntax: Traefik dynamic YAML for Traefik, or Caddy configuration and *.caddy snippets for Caddy.
  6. Redeploy or restart every affected resource. This applies the labels and network attachments expected by the new proxy.
  7. Test at least one HTTP hostname and one HTTPS hostname, then inspect proxy logs before declaring the migration complete.

If a route fails after the switch, do not copy the previous proxy’s labels into the new service. Check that the resource was redeployed and that the generated labels match the selected proxy type. Revert only after documenting the new proxy’s state and confirming that the old configuration is still available to restore.

Keep proxy types consistent across servers

In a multi-server Coolify deployment, labels generated for the primary server must be compatible with the proxy type used on the other servers that consume them. Traefik labels do not work on a Caddy server, and Caddy labels do not work on a Traefik server. Use one proxy type consistently across servers that share generated labels, or isolate resources so that each proxy receives only its own label format.

DNS, networking and TLS checks when HTTPS fails

Check What to verify Typical symptom when wrong
Hostname resolution The requested hostname resolves to the server running the resource A different site, connection timeout or connection to an old server
Inbound access TCP 80 and 443 are allowed through cloud and host firewalls; UDP 443 is allowed if you expect HTTP/3 Timeouts, failed HTTP challenges or HTTPS unavailable from outside
Certificate challenge HTTP challenge has public port 80; DNS challenge has a correctly scoped provider token and zone Certificate issuance or renewal errors
Resource domain Protocol, hostname, path and target port match the application 404, redirect loop or proxying to the wrong service
Container listener The process binds to the declared internal port and an address reachable from the proxy 502/503 responses or connection-refused messages
Docker network coolify-proxy and the destination container share a network Generated route exists but the upstream cannot be resolved or reached

The domain, proxy route, Docker network and container port must all describe the same path. A valid certificate cannot compensate for a wrong target port, and a healthy container cannot be reached if the proxy is attached to a different network.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Troubleshoot a route in the right order

  1. Check DNS first. Resolve the exact hostname from a network outside the server and confirm the returned address is current.
  2. Check the firewall. Verify that the cloud security group, host firewall and any upstream load balancer allow the required ports.
  3. Check proxy status. Open Servers → server → Proxy and confirm the selected proxy is running. A stopped proxy makes every route fail together.
  4. Read proxy logs. Use the Proxy page’s Logs view. Look for configuration parsing errors, certificate challenge failures and upstream connection errors.
  5. Inspect the generated route and labels. Confirm that the hostname, protocol and target port appear on the resource and that the labels correspond to the selected proxy.
  6. Verify the shared network. Redeploy the resource if the proxy or container was recreated and may have lost its network attachment.
  7. Verify the application port. Compare the declared target with the port on which the process is listening inside the container.
  8. Redeploy or restart after corrections. Stale labels and network connections are common after changing domains, ports or proxy type.

Interpret common symptoms

  • DNS resolves correctly but the request times out: investigate firewall rules and whether the proxy is listening on the public interface.
  • HTTPS certificate is missing or cannot renew: verify public port 80 for an HTTP challenge, or verify the DNS challenge token and authoritative zone for a DNS challenge.
  • 404 from the proxy: check the hostname and path on the resource, then confirm the resource was redeployed after editing its domain.
  • 502 or 503: check the internal target port, process binding address, shared Docker network and upstream health.
  • Everything broke immediately after switching: wait for the new proxy to become ready, redeploy resources to generate the new label format, and recreate custom routes instead of reusing the old syntax.

Post-configuration validation checklist

  • One representative HTTP hostname returns the intended application or the expected redirect.
  • One HTTPS hostname presents a certificate for the requested name and serves the intended content.
  • The certificate renewal method is compatible with your firewall: HTTP challenge has reachable port 80, while DNS challenge has the minimum required provider permissions.
  • The application’s target container port is reachable from coolify-proxy.
  • Proxy logs contain no unresolved router, label, syntax or upstream errors.
  • Any dashboard route requires authentication and is not using an insecure public mode.
  • After a proxy switch, every affected resource has been redeployed or restarted and at least one route has been tested on each relevant server.

Which proxy should you use?

Choose Traefik when you want Coolify’s default behavior, the broadest documentation and the least migration work. Choose Caddy when a Caddy-specific feature or established Caddy expertise is important enough to justify a server-wide interruption and the recreation of custom routes. Whichever you select, keep the proxy type consistent across cooperating servers, make domain and port changes in Coolify, and diagnose failures from DNS through the container network rather than changing proxy syntax at random.

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.