Docker basics: Using mkcert and Caddy with Docker Compose to host web services over HTTPS for local development

📰 Dev.to · Nathan Cook

Learn to host web services over HTTPS for local development using mkcert, Caddy, and Docker Compose

intermediate Published 21 Apr 2026
Action Steps
  1. Install mkcert to generate SSL certificates
  2. Configure Caddy to use the generated certificates
  3. Create a Docker Compose file to define the web service
  4. Run Docker Compose to start the web service over HTTPS
  5. Test the web service using a browser or tool like curl
Who Needs to Know This

Developers and DevOps engineers can benefit from this tutorial to set up a secure local development environment

Key Insight

💡 Using mkcert and Caddy with Docker Compose simplifies the process of hosting web services over HTTPS for local development

Share This
Host web services over HTTPS for local development using mkcert, Caddy, and Docker Compose 🚀💻

Key Takeaways

Learn to host web services over HTTPS for local development using mkcert, Caddy, and Docker Compose

Full Article

Title: Using mkcert and Caddy with Docker Compose to host web services over HTTPS for local development

URL Source: https://dev.to/moofoo/docker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d

Published Time: 2026-04-21T07:16:47Z

Markdown Content:
[Skip to content](https://dev.to/moofoo/docker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d#main-content)

[![Image 1: DEV Community](https://media2.dev.to/dynamic/image/quality=100/https://dev-to-uploads.s3.amazonaws.com/uploads/logos/resized_logo_UQww2soKuUsjaOGNB38o.png)](https://dev.to/)

[Powered by Algolia](https://www.algolia.com/developers/?utm_source=devto&utm_medium=referral)

[Log in](https://dev.to/enter?signup_subforem=1)[Create account](https://dev.to/enter?signup_subforem=1&state=new-user)

## DEV Community

![Image 2](https://assets.dev.to/assets/heart-plus-active-9ea3b22f2bc311281db911d416166c5f430636e76b15cd5df6b3b841d830eefa.svg)1 Add reaction

![Image 3](https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg)1 Like ![Image 4](https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg)0 Unicorn ![Image 5](https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg)0 Exploding Head ![Image 6](https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed9305ee0f4553df0eb7b4f11b01b6b1b499973048fe5.svg)0 Raised Hands ![Image 7](https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg)0 Fire

0 Jump to Comments 0 Save Boost

Copy link

Copied to Clipboard

[Share to X](https://twitter.com/intent/tweet?text=%22Using%20mkcert%20and%20Caddy%20with%20Docker%20Compose%20to%20host%20web%20services%20over%20HTTPS%20for%20local%20development%22%20by%20Nathan%20Cook%20%23DEVCommunity%20https%3A%2F%2Fdev.to%2Fmoofoo%2Fdocker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d)[Share to LinkedIn](https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fdev.to%2Fmoofoo%2Fdocker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d&title=Using%20mkcert%20and%20Caddy%20with%20Docker%20Compose%20to%20host%20web%20services%20over%20HTTPS%20for%20local%20development&summary=This%20tutorial%20walks%20you%20through%20setting%20up%20a%20simple%20Docker%20Compose%20project%20that%20serves%20two%20Node%20web...&source=DEV%20Community)[Share to Facebook](https://www.facebook.com/sharer.php?u=https%3A%2F%2Fdev.to%2Fmoofoo%2Fdocker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d)[Share to Mastodon](https://s2f.kytta.dev/?text=https%3A%2F%2Fdev.to%2Fmoofoo%2Fdocker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d)

[Share Post via...](https://dev.to/moofoo/docker-basics-using-mkcert-and-caddy-with-docker-compose-to-host-web-services-over-https-for-local-2a3d#)[Report Abuse](https://dev.to/report-abuse)

[![Image 8: Nathan Cook](https://media2.dev.to/dynamic/image/width=50,height=50,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F542595%2F5d984e24-719c-4732-b93f-31bef7b8b0d9.png)](https://dev.to/moofoo)

[Nathan Cook](https://dev.to/moofoo)
Posted on Apr 21 • Edited on May 22

![Image 9](https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg)1![Image 10](https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg)![Image 11](https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg)![Image 12](https://assets.dev.to/assets/raised-hands-74b2099fd66a39f2d7eed
Read full article → ← Back to Reads