---
title: Install caddy on Linux | Snap Store
description: Get the latest version of caddy for Linux - Fast, multi-platform web
  server with automatic HTTPS
url: https://snapcraft.io/caddy
---

# caddy

[Yuzukosho (aoilinux)](https://snapcraft.io/publisher/aoilinux "View all snaps from Yuzukosho (aoilinux)")

* [Yuzukosho (aoilinux)](https://snapcraft.io/publisher/aoilinux "View all snaps from Yuzukosho (aoilinux)")
* [Server and Cloud](https://snapcraft.io/search?categories=server-and-cloud)

latest/stable v2.11.4

Install latest/stable of caddy

---

**Install using the command line**

```
sudo snap install caddy
```

Don't have snapd? [Get set up for snaps](https://snapcraft.io/docs/installing-snapd).

---

### Package name

* caddy

---

### License

* Apache-2.0 AND CC-BY-NC-SA-4.0

---

### Last updated

* 6 June 2026 - latest/stable
* 3 October 2026 - latest/edge

---

### Websites

* [github.com/boukendesho/caddy-snap/tree/main](https://github.com/boukendesho/caddy-snap/tree/main "https://github.com/boukendesho/caddy-snap/tree/main")

---

### Report a bug

* [github.com/boukendesho/caddy-snap/issues](https://github.com/boukendesho/caddy-snap/issues "https://github.com/boukendesho/caddy-snap/issues")

---

##### Report a Snap Store violation

* [Report this Snap](https://snapcraft.io/caddy#report-snap-modal)

---

* [Description](https://snapcraft.io/caddy#tab-description)
* [Security](https://snapcraft.io/caddy#tab-security)

#### Fast, multi-platform web server with automatic HTTPS

## Unofficial snap ##

Caddy is a powerful, extensible platform to serve your sites, services, and
apps, written in Go.

Most people use Caddy as a web server or proxy, but at its core, Caddy is a
server of servers. With the requisite modules, it can take on the role of any
long-running process!

Configuration is both dynamic and exportable with Caddy's API. Although no
config file is required, you can still use them; most people's favorite way of
configuring Caddy is using the Caddyfile. The format of the config document
takes many forms with config adapters, but Caddy's native config language is
JSON.

---

This particular snap has a few key features:

1. Intended for use on Ubuntu Core
   caddy is setup as a daemon so that Ubuntu Core machines can use it!
   This means that the configuration is intended to be passed in a fashion
   useful for Ubuntu Core devices, snap config values. Instead of creating a
   Caddyfile, set the JSON corresponding to your desired configuration as a
   config value via:

snap set caddy config='{...}'

caddy-wrapper will consume this configuration value and pass that to caddy.

2. Useful with other snaps
   Instead of serving the content from the caddy snap itself (also supported),
   instead other snaps can provide the content caddy serves. As long as the
   implement the caddy-content slot which properly exposes the file hierarchy,
   caddy can access that file tree and serve the content! To do so, run:

snap connect caddy:caddy-content <snap>:caddy-content

Provider snaps should expose the content as READ to "<foo>", and that
content should be available to caddy at "$SNAP/var/www/<foo>"

3. Extensible
   A check is involved just in-case end-users run caddy add-package. As this
   behaviour modifies the caddy binary itself and snaps are read-only, the caddy
   binary is instead copied to the writable area and that modified caddy binary
   is the one being used to add and remove modules. Whether the modified caddy
   binary is the one being used or not can be checked (or set) with:

snap get caddy modified

Modules can be specified by the gadget snap which caddy will fetch on first
installation via the default-configure hook.

Importantly, configuration is handled via snap config values. Because Caddy's
API uses JSON for configuration, this is a natural choice. For an example of a
simple test, refer to the project README on the website.

Of course, for users opting to use the CLI directly any method for supplying a
configuration can be used.

---

## Install caddy on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the [installing snapd documentation](https://snapcraft.io/docs/installing-snapd).

[### Arch Linux](https://snapcraft.io/install/caddy/arch)

[### CentOS](https://snapcraft.io/install/caddy/centos)

[### Debian](https://snapcraft.io/install/caddy/debian)

[### elementary OS](https://snapcraft.io/install/caddy/elementary)

[### Fedora](https://snapcraft.io/install/caddy/fedora)

[### KDE Neon](https://snapcraft.io/install/caddy/kde-neon)

[### Kubuntu](https://snapcraft.io/install/caddy/kubuntu)

[### Manjaro](https://snapcraft.io/install/caddy/manjaro)

[### Pop!\_OS](https://snapcraft.io/install/caddy/pop)

[### openSUSE](https://snapcraft.io/install/caddy/opensuse)

[### Red Hat Enterprise Linux](https://snapcraft.io/install/caddy/rhel)

[### Ubuntu](https://snapcraft.io/install/caddy/ubuntu)

[### Raspberry Pi](https://snapcraft.io/install/caddy/raspbian)
