Skip to main content

caddyserver

The Caddy web server as a Python wheel — install with pip/uvx, no mise, no Docker, no Homebrew, no first-run download. Works offline after install. pip/uv picks the right binary for your OS and architecture automatically (Windows, macOS, Linux; x86-64 and ARM64).

Quick run (no install)

uvx caddyserver version
uvx caddyserver file-server --listen :8080

uvx caddyserver ... runs Caddy directly — anything after caddyserver is passed straight to the Caddy CLI.

Install

pip install caddyserver       # or: uv tool install caddyserver / pipx install caddyserver
caddy version

CLI usage

The wheel puts the real caddy binary on your PATH, so the full official CLI works as-is:

caddy version                        # show version
caddy file-server --listen :8080     # serve the current directory
caddy run --config Caddyfile         # start with your Caddyfile
caddy validate --config Caddyfile    # check config syntax
caddy adapt --config Caddyfile       # Caddyfile -> JSON
caddy list modules                   # list compiled-in modules

Any caddy subcommand works — this is the unmodified official binary. A caddyserver console script does the same thing (Python launcher), useful when bin/ is not on PATH: uvx caddyserver version.

Programmatic use

from caddyserver import get_caddy_executable
exe = get_caddy_executable()  # Path to the bundled caddy binary

The package version mirrors the Caddy version (e.g. caddyserver==2.11.7 bundles Caddy v2.11.7).

Maintenance

Committed to tracking the latest Caddy release — a bump is one line plus a tag, and the pipeline builds, verifies, and publishes automatically. If I am slow to pick up a new Caddy release, open an issue — I will push a new version promptly. PRs bumping build/version.txt welcome.

Verification

Every GitHub Release lists the wheel SHA-256 and the upstream Caddy asset digest for each file; the build fails hard if any downloaded asset doesn't match the official checksums.

Version bump (maintainers)

echo "2.12.0" > build/version.txt
# also update pyproject.toml version + src/caddyserver/__init__.py __version__
git commit -am "bump to 2.12.0"
git tag v2.12.0 && git push --tags   # CI builds, verifies, publishes

Metadata

Release files for caddyserver 2.11.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for caddyserver 2.11.7
File Size Uploaded
caddyserver-2.11.7.tar.gz 7.9 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for caddyserver 2.11.7
File
caddyserver-2.11.7-py3-none-win_arm64.whl Python 3 none Windows ARM64 Details
caddyserver-2.11.7-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
caddyserver-2.11.7-py3-none-manylinux2014_x86_64.musllinux_1_1_x86_64.whl Python 3 none Linux musl 1.1+ x86-64, Linux glibc 2.17+ x86-64 Details
caddyserver-2.11.7-py3-none-manylinux2014_aarch64.musllinux_1_1_aarch64.whl Python 3 none Linux musl 1.1+ ARM64, Linux glibc 2.17+ ARM64 Details
caddyserver-2.11.7-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
caddyserver-2.11.7-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 306.2 MB

Release files / caddyserver-2.11.7.tar.gz

Download URL caddyserver-2.11.7.tar.gz
Size 7.9 kB
Tags Source
SHA-256 checksum
How to use checksums
5ac1ee609f480f1236067470fba17050c04ef573aef8be09628057f497820ca9
BLAKE2b-256 checksum
How to use checksums
0f33d250d97d6bc7362f8647084c5e386f831b33f9b2a712e6fe20566aaff3e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-win_arm64.whl

Download URL caddyserver-2.11.7-py3-none-win_arm64.whl
Size 48.9 MB
Tags Python 3 Windows ARM64
SHA-256 checksum
How to use checksums
18c6052e2b0967c3fa2db407e1cdccc35efa1b523ecc1bab19ab545b97f6fa85
BLAKE2b-256 checksum
How to use checksums
f49ab0a67fee0228d2e11ad8374b49681e70aa92f6bc50ddbacff1f1e9b53579
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-win_amd64.whl

Download URL caddyserver-2.11.7-py3-none-win_amd64.whl
Size 53.2 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
d9600bf109e83ce773cbaccaa829eeeca7222e963c5fc1a0337b07e863163ba8
BLAKE2b-256 checksum
How to use checksums
0b2df5f38d2459fae99a1b6298eb6109088489b80999ec53f9c209e36b0b4551
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-manylinux2014_x86_64.musllinux_1_1_x86_64.whl

Download URL caddyserver-2.11.7-py3-none-manylinux2014_x86_64.musllinux_1_1_x86_64.whl
Size 52.0 MB
Tags Linux glibc 2.17+ x86-64 Linux musl 1.1+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0eb5a1e23ac5a9fdf17571996f967ff0cf7bbd4143d12ed78f2862a88293e9ed
BLAKE2b-256 checksum
How to use checksums
a580b445c1a463a5e0a89e964f660682fca44e7f1b0539d916f95192874429f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-manylinux2014_aarch64.musllinux_1_1_aarch64.whl

Download URL caddyserver-2.11.7-py3-none-manylinux2014_aarch64.musllinux_1_1_aarch64.whl
Size 48.4 MB
Tags Linux glibc 2.17+ ARM64 Linux musl 1.1+ ARM64 Python 3
SHA-256 checksum
How to use checksums
c74c1b9b8f392145568a6a4b17141946275bd14b0351e6f83aeab78ec79f25a8
BLAKE2b-256 checksum
How to use checksums
3a7449f2ca8adb799e07770022866d942a2c3612a2fc7358ab62d53ef2a24c82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-macosx_11_0_x86_64.whl

Download URL caddyserver-2.11.7-py3-none-macosx_11_0_x86_64.whl
Size 53.5 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
17c74b7386fc0a5f749dce3d5b1acf672194104f971cdb17ef3a45d003360ae3
BLAKE2b-256 checksum
How to use checksums
39ba23d14aa8d7b6647f1063850298117949be62d5164d49489a0ba39b48ca93
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release files / caddyserver-2.11.7-py3-none-macosx_11_0_arm64.whl

Download URL caddyserver-2.11.7-py3-none-macosx_11_0_arm64.whl
Size 50.2 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0dc21608bb89b176866a23a8ea736699b2c93e9951a01c3a3de4eccb6bd02e0b
BLAKE2b-256 checksum
How to use checksums
a604c1227e3748ed2d2179d887e3b37fb416f6178dda67cae24b541da522e3d8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 4, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.11.7 This release

7 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page