add a binary installation method
parent
97755d31cd
commit
4817378c79
@ -1,3 +1,6 @@
|
||||
---
|
||||
caddy_config_sites_directory: "/etc/caddy/sites.d"
|
||||
caddy_config_sites_clear: false
|
||||
caddy_installation_method: "apt"
|
||||
|
||||
caddy_download_url: "https://caddyserver.com/api/download?os=linux&arch=amd64"
|
||||
|
@ -0,0 +1,39 @@
|
||||
---
|
||||
- name: Create caddy user
|
||||
user:
|
||||
state: present
|
||||
name: "caddy"
|
||||
groups:
|
||||
- "www-data"
|
||||
append: true
|
||||
shell: "/usr/sbin/nologin"
|
||||
home: "/var/lib/caddy"
|
||||
comment: "Caddy web server"
|
||||
system: yes
|
||||
|
||||
- name: Download caddy binary
|
||||
get_url:
|
||||
url: "{{ caddy_download_url }}"
|
||||
dest: "/usr/bin/caddy"
|
||||
owner: "root"
|
||||
group: "root"
|
||||
mode: 0755
|
||||
|
||||
- name: Create caddy configuration directory
|
||||
file:
|
||||
path: "/etc/caddy"
|
||||
owner: "caddy"
|
||||
group: "caddy"
|
||||
state: directory
|
||||
|
||||
- name: Template caddy systemd-service
|
||||
template:
|
||||
src: "caddy.service.j2"
|
||||
dest: "/etc/systemd/system/caddy.service"
|
||||
|
||||
- name: Enable and start caddy systemd-service
|
||||
systemd:
|
||||
name: "caddy.service"
|
||||
daemon_reload: yes
|
||||
enabled: yes
|
||||
state: started
|
@ -1,4 +1,5 @@
|
||||
---
|
||||
- import_tasks: "install.yml"
|
||||
- import_tasks: "install_{{ caddy_installation_method }}.yml"
|
||||
|
||||
- import_tasks: "configuration.yml"
|
||||
|
||||
|
@ -0,0 +1,35 @@
|
||||
# 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]
|
||||
User=caddy
|
||||
Group=caddy
|
||||
ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile
|
||||
ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile
|
||||
TimeoutStopSec=5s
|
||||
LimitNOFILE=1048576
|
||||
LimitNPROC=512
|
||||
PrivateTmp=true
|
||||
ProtectSystem=full
|
||||
AmbientCapabilities=CAP_NET_BIND_SERVICE
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
Loading…
Reference in New Issue