45 lines
1.1 KiB
YAML
45 lines
1.1 KiB
YAML
# vim: ft=yaml.ansible
|
|
---
|
|
- name: Create Caddy volume directories
|
|
ansible.builtin.file:
|
|
name: "{{ 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 stop is defined and stop else 'started' }}"
|
|
restart: "{{ stop is undefined or not stop }}"
|
|
image: caddy:{{ services.caddy.version }}
|
|
restart_policy: always
|
|
networks:
|
|
- name: services
|
|
ipv4_address: 172.16.3.2
|
|
published_ports:
|
|
- 80:80/tcp
|
|
- 443:443/tcp
|
|
- 18089:18089/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
|