@marcel91200 / caddy Mirror · read-only / commits / ee64719d
Fork 0

Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS

Mirrored from https://github.com/Slazee/caddy.git

Synced Nov 14, 05:15 UTC

Update readme

Matthew Holt committed Mar 23, 2020 at 14:29 UTC ee64719d932284419b5267b2eb94f9fc3a0d516b
1 file changed +36 -15
README.md
+36 -15
@@ -1,19 +1,10 @@
1 -Caddy 2
2 -=======
3 -
4 -This is the development branch for Caddy 2, the web server of the Go community.
5 -
6 -**Caddy 2 is production-ready, but there may be breaking changes before the stable 2.0 release.** Please test it and deploy it as much as you are able, and submit your feedback!
7 -
8 ----
9 -
1 <p align="center">
2 <a href="https://caddyserver.com"><img src="https://user-images.githubusercontent.com/1128849/36338535-05fb646a-136f-11e8-987b-e6901e717d5a.png" alt="Caddy" width="450"></a>
3 </p>
4 <h3 align="center">Every site on HTTPS</h3>
5 <p align="center">Caddy is an extensible server platform that uses TLS by default.</p>
6 <p align="center">
16 - <a href="https://github.com/caddyserver/caddy/actions?query=workflow%3ACross-Platform"><img src="https://github.com/caddyserver/caddy/workflows/Cross-Platform/badge.svg?branch=v2"></a>
7 + <a href="https://github.com/caddyserver/caddy/actions?query=workflow%3ACross-Platform"><img src="https://github.com/caddyserver/caddy/workflows/Cross-Platform/badge.svg"></a>
8 <a href="https://pkg.go.dev/github.com/caddyserver/caddy/v2"><img src="https://img.shields.io/badge/godoc-reference-blue.svg"></a>
9 <a href="https://app.fuzzit.dev/orgs/caddyserver-gh/dashboard"><img src="https://app.fuzzit.dev/badge?org_id=caddyserver-gh"></a>
10 <br>
@@ -31,6 +22,7 @@ This is the development branch for Caddy 2, the web server of the Go community.
22
23 ### Menu
24
25 +- [Features](#features)
26 - [Build from source](#build-from-source)
27 - [For development](#for-development)
28 - [With version information and/or plugins](#with-version-information-andor-plugins)
@@ -46,6 +38,27 @@ This is the development branch for Caddy 2, the web server of the Go community.
38 <a href="https://github.com/caddyserver/certmagic"><img src="https://user-images.githubusercontent.com/1128849/49704830-49d37200-fbd5-11e8-8385-767e0cd033c3.png" alt="CertMagic" width="250"></a>
39 </p>
40
41 +
42 +## Features
43 +
44 +- **Easy configuration** with the [Caddyfile](https://caddyserver.com/docs/caddyfile)
45 +- **Powerful configuration** with its [native JSON config](https://caddyserver.com/docs/json/)
46 +- **Dynamic configuration** with the [JSON API](https://caddyserver.com/api)
47 +- [**Config adapters**](https://caddyserver.com/docs/config-adapters) if you don't like JSON
48 +- **Automatic HTTPS** by default
49 + - [Let's Encrypt](https://letsencrypt.org) for public sites
50 + - Fully-managed local CA for internal names & IPs
51 + - Can coordinate with other Caddy instances in a cluster
52 +- **Stays up when other servers go down** due to TLS/OCSP/certificate-related issues
53 +- **HTTP/1.1, HTTP/2, and experimental HTTP/3** support
54 +- **Highly extensible** [modular architecture](https://caddyserver.com/docs/extending-caddy) lets Caddy do anything without bloat
55 +- **Runs anywhere** with **no external dependencies** (not even libc)
56 +- Written in Go, a language with higher **memory safety guarantees** than other servers
57 +- Actually **fun to use**
58 +- So, so much more
59 +
60 +
61 +
62 ## Build from source
63
64 Requirements:
@@ -54,22 +67,30 @@ Requirements:
67 - Do NOT disable [Go modules](https://github.com/golang/go/wiki/Modules) (`export GO111MODULE=on`)
68
69 ### For development
57 -
58 -_**Note:** These steps [will not embed proper version information](https://github.com/golang/go/issues/29228). For that, please follow the instructions below._
70
71 ```bash
61 -$ git clone -b v2 "https://github.com/caddyserver/caddy.git"
72 +$ git clone "https://github.com/caddyserver/caddy.git"
73 $ cd caddy/cmd/caddy/
74 $ go build
75 ```
76
77 +_**Note:** These steps [will not embed proper version information](https://github.com/golang/go/issues/29228). For that, please follow the instructions below._
78 +
79 ### With version information and/or plugins
80
81 +Using [our builder tool](https://github.com/caddyserver/builder)...
82 +
83 +```
84 +$ builder --version CADDY_VERSION
85 +```
86 +
87 +...the following steps are automated:
88 +
89 1. Create a new folder: `mkdir caddy`
90 2. Change into it: `cd caddy`
70 -3. Copy [Caddy's main.go](https://github.com/caddyserver/caddy/blob/v2/cmd/caddy/main.go) into the empty folder. Add imports for any custom plugins you want to add.
91 +3. Copy [Caddy's main.go](https://github.com/caddyserver/caddy/blob/master/cmd/caddy/main.go) into the empty folder. Add imports for any custom plugins you want to add.
92 4. Initialize a Go module: `go mod init caddy`
72 -5. Pin Caddy version: `go get github.com/caddyserver/caddy/v2@TAG` replacing `TAG` with a git tag or commit.
93 +5. Pin Caddy version: `go get github.com/caddyserver/caddy/v2@TAG` replacing `TAG` with a git tag or commit. You can also pin any plugin versions similarly.
94 6. Compile: `go build`
95
96