45 lines
1.2 KiB
YAML
45 lines
1.2 KiB
YAML
# vim: ft=yaml.ansible
|
|
---
|
|
- name: Create Caddy volume directories
|
|
ansible.builtin.file:
|
|
path: "{{ services.caddy.volume }}/{{ dir }}"
|
|
owner: root
|
|
mode: u=rwx,g=rx,o=rx
|
|
state: directory
|
|
loop:
|
|
- config
|
|
- data
|
|
loop_control:
|
|
loop_var: dir
|
|
|
|
- name: Copy Caddyfile
|
|
ansible.builtin.template:
|
|
src: Caddyfile.j2
|
|
dest: "{{ services.caddy.volume }}/Caddyfile"
|
|
owner: root
|
|
mode: u=rw,g=r,o=r
|
|
|
|
- name: Deploy Caddy Docker container
|
|
community.docker.docker_container:
|
|
name: caddy
|
|
state: "{{ 'absent' if down is defined and down else 'started' }}"
|
|
restart: "{{ restart is defined and restart }}"
|
|
recreate: "{{ recreate is defined and recreate }}"
|
|
image: caddy:{{ services.caddy.version }}
|
|
restart_policy: always
|
|
default_host_ip: ''
|
|
networks:
|
|
- name: services
|
|
published_ports:
|
|
- 80:80/tcp
|
|
- 443:443/tcp
|
|
volumes:
|
|
- "{{ services.caddy.volume }}/Caddyfile:/etc/caddy/Caddyfile:ro"
|
|
- "{{ services.caddy.volume }}/config:/config:rw"
|
|
- "{{ services.caddy.volume }}/data:/data:rw"
|
|
capabilities:
|
|
- net_bind_service
|
|
- dac_override
|
|
cap_drop:
|
|
- all
|