|
|
|
@ -54,4 +54,119 @@ $ curl https://get.acme.sh | sh
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
```
|
|
|
|
$ sudo ./caddy run --config Caddyfile
|
|
|
|
$ sudo ./caddy run --config Caddyfile
|
|
|
|
```
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## Run as Service
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Reference](https://caddyserver.com/docs/running#unit-files)
|
|
|
|
|
|
|
|
- Setup user / group
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
|
|
|
$ sudo mv caddy /usr/bin/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$ caddy version
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$ sudo groupadd --system caddy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$ sudo useradd --system \
|
|
|
|
|
|
|
|
--gid caddy \
|
|
|
|
|
|
|
|
--create-home \
|
|
|
|
|
|
|
|
--home-dir /var/lib/caddy \
|
|
|
|
|
|
|
|
--shell /usr/sbin/nologin \
|
|
|
|
|
|
|
|
--comment "Caddy web server" \
|
|
|
|
|
|
|
|
caddy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- create Caddyfile
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
|
|
|
$ sudo mkdir /etc/caddy
|
|
|
|
|
|
|
|
$ sudo nano /etc/caddy/Caddyfile
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
|
|
|
homenetyth.ddnsking.com, homeyth.ddnsking.com {
|
|
|
|
|
|
|
|
reverse_proxy 127.0.0.1:3000 {
|
|
|
|
|
|
|
|
lb_policy first
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
homenetyth.ddnsking.com:5001 {
|
|
|
|
|
|
|
|
reverse_proxy https://192.168.0.16:5001 {
|
|
|
|
|
|
|
|
transport http {
|
|
|
|
|
|
|
|
tls
|
|
|
|
|
|
|
|
tls_insecure_skip_verify
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
homenetyth.ddnsking.com:8080 {
|
|
|
|
|
|
|
|
reverse_proxy http://192.168.0.174:8080
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- create caddy.service
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
|
|
|
$ sudo nano /etc/systemd/system/caddy.service
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
|
|
|
# caddy.service
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
# For using Caddy with a config file.
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
# Make sure the ExecStart and ExecReload commands are correct
|
|
|
|
|
|
|
|
# for your installation.
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
# See https://caddyserver.com/docs/install for instructions.
|
|
|
|
|
|
|
|
#
|
|
|
|
|
|
|
|
# WARNING: This service does not use the --resume flag, so if you
|
|
|
|
|
|
|
|
# use the API to make changes, they will be overwritten by the
|
|
|
|
|
|
|
|
# Caddyfile next time the service is restarted. If you intend to
|
|
|
|
|
|
|
|
# use Caddy's API to configure it, add the --resume flag to the
|
|
|
|
|
|
|
|
# `caddy run` command or use the caddy-api.service file instead.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Unit]
|
|
|
|
|
|
|
|
Description=Caddy
|
|
|
|
|
|
|
|
Documentation=https://caddyserver.com/docs/
|
|
|
|
|
|
|
|
After=network.target network-online.target
|
|
|
|
|
|
|
|
Requires=network-online.target
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
|
|
|
|
Type=notify
|
|
|
|
|
|
|
|
User=caddy
|
|
|
|
|
|
|
|
Group=caddy
|
|
|
|
|
|
|
|
ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
|
|
|
|
|
|
|
|
ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile --force
|
|
|
|
|
|
|
|
TimeoutStopSec=5s
|
|
|
|
|
|
|
|
LimitNOFILE=1048576
|
|
|
|
|
|
|
|
LimitNPROC=512
|
|
|
|
|
|
|
|
PrivateTmp=true
|
|
|
|
|
|
|
|
ProtectSystem=full
|
|
|
|
|
|
|
|
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Install]
|
|
|
|
|
|
|
|
WantedBy=multi-user.target
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Load the service
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
|
|
|
$ sudo systemctl daemon-reload
|
|
|
|
|
|
|
|
$ sudo systemctl enable --now caddy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# verify service is running
|
|
|
|
|
|
|
|
$ systemctl status caddy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Service is ready
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Future editing
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
```shell
|
|
|
|
|
|
|
|
$ sudo nano /etc/caddy/Caddyfile
|
|
|
|
|
|
|
|
```
|
|
|
|
|