Downloads of v


Last Update:

11 Mar 2016

Package Maintainer(s):

Software Author(s):

  • Matt Holt


caddy web server


This is not the latest version of Caddy available. | Updated: 11 Mar 2016



Downloads of v



Software Author(s):

  • Matt Holt


caddy web server


This is not the latest version of Caddy available.

All Checks are Passing

2 Passing Test

Validation Testing Passed

Verification Testing Passed


To install Caddy, run the following command from the command line or from PowerShell:


To upgrade Caddy, run the following command from the command line or from PowerShell:


To uninstall Caddy, run the following command from the command line or from PowerShell:


NOTE: This applies to both open source and commercial editions of Chocolatey.

1. Ensure you are set for organizational deployment

Please see the organizational deployment guide

  • Open Source or Commercial:
    • Proxy Repository - Create a proxy nuget repository on Nexus, Artifactory Pro, or a proxy Chocolatey repository on ProGet. Point your upstream to Packages cache on first access automatically. Make sure your choco clients are using your proxy repository as a source and NOT the default community repository. See source command for more information.
    • You can also just download the package and push it to a repository Download

3. Enter your internal repository url

(this should look similar to

4. Choose your deployment method:

choco upgrade caddy -y --source="'STEP 3 URL'" [other options]

See options you can pass to upgrade.

See best practices for scripting.

Add this to a PowerShell script or use a Batch script with tools and in places where you are calling directly to Chocolatey. If you are integrating, keep in mind enhanced exit codes.

If you do use a PowerShell script, use the following to ensure bad exit codes are shown as failures:

choco upgrade caddy -y --source="'STEP 3 URL'"

Write-Verbose "Exit code was $exitCode"
$validExitCodes = @(0, 1605, 1614, 1641, 3010)
if ($validExitCodes -contains $exitCode) {
  Exit 0

Exit $exitCode

- name: Ensure caddy installed
    name: caddy
    state: present
    source: STEP 3 URL

See docs at

Coming early 2020! Central Managment Reporting available now! More information...

chocolatey_package 'caddy' do
  action    :install
  version  ''
  source   'STEP 3 URL'

See docs at

    Name: caddy,
    Source: STEP 3 URL

Requires Otter Chocolatey Extension. See docs at

cChocoPackageInstaller caddy
   Name     = 'caddy'
   Ensure   = 'Present'
   Version  = ''
   Source   = 'STEP 3 URL'

Requires cChoco DSC Resource. See docs at

package { 'caddy':
  provider => 'chocolatey',
  ensure   => '',
  source   => 'STEP 3 URL',

Requires Puppet Chocolatey Provider module. See docs at

salt '*' chocolatey.install caddy version="" source="STEP 3 URL"

See docs at

5. If applicable - Chocolatey configuration/installation

See infrastructure management matrix for Chocolatey configuration elements and examples.

There are versions of this package awaiting moderation . See the Version History section below.

This package was approved by moderator ferventcoder on 15 Mar 2016.


Caddy is a lightweight, general-purpose web server for Windows, Mac, Linux, BSD and Android. It is a capable alternative to other popular and easy to use web servers. (@caddyserver on Twitter)

The most notable features are HTTP/2, Let's Encrypt support, Virtual Hosts, TLS + SNI, and easy configuration with a Caddyfile. In development, you usually put one Caddyfile with each site. In production, Caddy serves HTTPS by default and manages all cryptographic assets for you.

User Guide

md5: 8276E4DD8D05A4074A036738DAD5F728 | sha1: 0A91874226E3E8DFE7A220DB245148735D0CAD84 | sha256: B6147F8E18BE55E2780F7C2E258588339E670A3A7242DE70C3031016E8A33014 | sha512: AD0C39FF4EECF585847BBC7A3F0BCB468FB08D94668744D3376954B1915CDF26DF4CA7706177DCABDFFA90AC1031989FF9969BA873626C436E188EF0A4518C10
md5: B0E21BF14248F9FC93D39C6D4FB1F8A5 | sha1: 2D9E7AB29B8D4E70C9D07390BC18DB643DA102E9 | sha256: AD51A7BEC6F3658A0B6055F42342F95CD1B7BC6B846837EBEC8ABD8ABF2D5160 | sha512: 2EFFC854847189DE32323AEB1E41A2125C0CA0A43BF58071DFB588112095A53910EAB8EC3ECCE8F0815D6285BC8F3072FDE7E0F4EB20442B18CEE3619FC0C06C
$installDir = Split-Path -Parent $MyInvocation.MyCommand.Definition

$zipFile = if (Get-ProcessorBits 32) {
    Join-Path $installDir ""
} else {
    Join-Path $installDir ""

Get-ChocolateyUnzip $zipFile $installDir

Log in or click on link to see number of positives.

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.

Version Downloads Last Updated Status
Caddy 2.2.1 3 Wednesday, October 14, 2020 Waiting for Maintainer
Caddy 2.2.0 3 Monday, October 12, 2020 Waiting for Maintainer
Caddy 0.8.3 349 Monday, May 16, 2016 Approved
Caddy 271 Friday, March 11, 2016 Approved

With 0.8.2, Caddy gets On-Demand TLS, which means it can obtain certificates during TLS handshakes; it does not need to know all the names when you start the server. Caddy is now built on Go 1.6, meaning faster crypto and highly-optimized garbage collection. Caddy no longer restarts on its own; only if signaled with USR1 (all certificate maintenance is done in-process now). We've also added support for SHA384 cipher suites and the ability to load certificates in bulk from a folder.

On-Demand TLS is currently under tight rate limits to mitigate abuse. When you enable it, you have to set a hard limit of how many certificates it is allowed to issue using the max_certs property of the tls directive.

  • At most one certificate challenge happens at a time.
  • After 10 certificates are successfully obtained, new certificate challenges will not happen until 10 minutes after the last successful challenge.
  • A name that fails a challenge will not be allowed to be attempted again for 5 minutes.

This feature -- as well as all automatic HTTPS, even at startup -- is not guaranteed to be supported in the future if ACME CAs are not able to issue certificates in a reasonable timeframe (quicker than 10 minutes). Please speak with your CA if this is of interest to you.

See the relevant documentation and release announcement for more details.

All notable changes:

  • On-demand TLS can obtain certificates during handshakes
  • Built with Go 1.6
  • Process log (-log) is rotated when it gets large
  • Managed certificates get renewed 30 days early instead of just 14
  • fastcgi: Allow scheme prefix before address
  • markdown: Support for definition lists
  • proxy: Allow proxy to insecure HTTPS backends
  • proxy: Support proxy to unix socket
  • rewrite: Status code can be 2xx or 4xx
  • templates: New .Markdown action to interpret included file as Markdown
  • templates: .Truncate now truncates from end of string when length is negative
  • tls: Set hard limit for certificates obtained with on-demand TLS
  • tls: Load certificates from directory
  • tls: Add SHA384 cipher suites
  • Multiple bug fixes and internal changes

This package has no dependencies.

Discussion for the Caddy Package

Ground Rules:

  • This discussion is only about Caddy and the Caddy package. If you have feedback for Chocolatey, please contact the Google Group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Caddy, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.
comments powered by Disqus