Derek Coleman & Associates Inc logoDerek Coleman & Associates Inc

Home / Support / Caddy Web Server on Ubuntu 24.04 LTS

Caddy Web Server on Ubuntu 24.04 LTS — Support & Quick Start

Caddy Web Server on Ubuntu 24.04 LTS — Caddy is a modern web server and reverse proxy with automatic HTTPS: point a domain at it and it obtains and renews certificates by itself. Published by Derek Coleman & Associates Inc on the Azure Marketplace, deployed in your own Azure subscription.

At a glance

Application ports80 (HTTP, default site); 443 once you give Caddy a domain (automatic HTTPS)
Open in browserhttp://<VM-IP>/
Service(s)caddy
Configuration/etc/caddy/Caddyfile (default site serves /usr/share/caddy on :80; put your domain as the site address and Caddy provisions HTTPS automatically)
Logsjournalctl -u caddy -f
VersionCaddy 2.11.4 (official Caddy apt repository)
PlatformUbuntu 24.04 LTS

Quick start

  1. Deploy from the Azure Marketplace (Get It Now → Create), choosing your SSH key at the Administration step.
  2. Allow inbound SSH (22) for yourself plus the application port(s) in the Network Security Group (NSG): 80 and 443 (HTTP/S) — restrict to your own IP where possible. The VM's own firewall (ufw) is installed but NOT enabled on this image, so the NSG is the only filter in front of the VM.
  3. Browse to http://<VM-IP>/ — Caddy answers immediately with the default site.
  4. Set your domain and routes in /etc/caddy/Caddyfile and reload — automatic HTTPS needs DNS pointing at the VM and 80/443 open.

First login

  1. No credential is generated: browse to http://<VM-IP>/ — Caddy serves the default page.
  2. Edit /etc/caddy/Caddyfile (replace `:80` with your domain, add `reverse_proxy` or `file_server` directives), then `sudo systemctl reload caddy`; with DNS pointing at the VM and 80/443 open, Caddy obtains a Let's Encrypt certificate automatically.

Still stuck?

Email support@dcassociatesgroup.com (response within 1 business day) or send a message via the contact form. Include the offer name, VM size, region, and any log output — sudo journalctl -u <service> -n 100 usually tells the story.