move to owncloud
All checks were successful
Deploy Containers / Prepare (push) Successful in 1m54s

This commit is contained in:
2025-09-11 21:55:32 -04:00
parent 7f10dfa67a
commit 7261f29a7c
9 changed files with 368 additions and 370 deletions

View File

@@ -1,8 +0,0 @@
---
- name: Create Caddyfile
template:
src: roles/caddy/templates/Caddyfile.j2
dest: "{{ data_dir }}/caddy/Caddyfile"
- name: Reload Caddyfile
command: docker exec -w /etc/caddy caddy caddy reload

View File

@@ -1,44 +0,0 @@
---
- name: "Create file structure"
file:
path: "{{ item }}"
state: directory
with_items:
- "{{ data_dir }}/caddy"
- "{{ data_dir }}/caddy/data"
- "{{ data_dir }}/caddy/certs"
- name: Create Dockerfile
template:
src: Dockerfile.j2
dest: "{{ data_dir }}/caddy/Dockerfile"
- name: Build Caddy Image
docker_image:
name: caddy
tag: "latest"
build:
path: "{{ data_dir }}/caddy"
dockerfile: "Dockerfile"
source: build
state: present
- name: Deploy Caddy Container
docker_container:
name: caddy
image: caddy:latest
recreate: true
restart_policy: unless-stopped
networks:
- name: "{{ docker_network_name }}"
env:
CLOUDFLARE_TOKEN: "{{ CADDY_CLOUDFLARE_TOKEN }}"
HOST_IP: "{{ CADDY_HOST_IP }}"
VIDEO_MACHINE: "{{ CADDY_VIDEO_MACHINE }}"
volumes:
- "{{ data_dir }}/caddy/data:/data"
- "{{ data_dir }}/caddy/certs:/etc/letsencrypt"
- "{{ data_dir }}/caddy/Caddyfile:/etc/caddy/Caddyfile"
published_ports:
- 80:80
- 443:443

View File

@@ -1,52 +0,0 @@
# Snippets
{% if caddy_snippets is defined %}
{% for snippet_name, snippet_content in caddy_snippets.items() %}
({{ snippet_name }}) {
{% for line in snippet_content %}
{{ line }}
{% endfor %}
}
{% endfor %}
{% endif %}
# Sites
{% for site in caddy_sites %}
{{ site.domains | join(', ') }} {
{% if site.tls is defined %}
tls {
{% if site.tls.dns is defined %}
dns {{ site.tls.dns.provider }} {{ site.tls.dns.token }}
{% endif %}
{% if site.tls.cert is defined %}
{{ site.tls.cert }} {{ site.tls.key }}
{% endif %}
}
{% endif %}
{% for matcher in site.matchers | default([]) %}
@{{ matcher.name }} {{ matcher.type }} {{ matcher.value }}
{% endfor %}
{% for handler in site.handlers | default([]) %}
handle {% if handler.matcher is defined %}@{{ handler.matcher }} {% endif %}{
{% if handler.reverse_proxy is defined %}
reverse_proxy {{ handler.reverse_proxy }}
{% endif %}
{% if handler.import_tinyauth is defined %}
import tinyauth_forwarder *
{% endif %}
}
{% endfor %}
{% if handler.default is defined %}
handle {
{% if handler.default.redir is defined %}
redir {{ handler.default.redir }}
{% else %}
respond 404
{% endif %}
}
{% endif %}
}
{% endfor %}

View File

@@ -1,5 +0,0 @@
FROM caddy:builder AS builder
RUN caddy-builder \
github.com/caddy-dns/cloudflare
FROM caddy:latest
COPY --from=builder /usr/bin/caddy /usr/bin/caddy

View File

@@ -41,11 +41,17 @@
labels:
traefik.enable: "true"
traefik.http.routers.traefik.service: traefik
traefik.http.routers.traefik.rule: "Host(`{{ TRAEFIK_DASH_URL }}`)"
traefik.http.routers.traefik.rule: "Host(`traefik.fntz.net`)"
traefik.http.routers.traefik.entrypoints: webSecure
traefik.http.routers.traefik.tls.certresolver: letsencrypt
traefik.http.services.traefik.loadbalancer.server.port: "8080"
traefik.http.routers.jtraefik.service: jtraefik
traefik.http.routers.jtraefik.rule: "Host(`traefik-jackson.fntz.net`)"
traefik.http.routers.jtraefik.entrypoints: webSecure
traefik.http.routers.jtraefik.tls.certresolver: letsencrypt
traefik.http.services.jtraefik.loadbalancer.server.url: "http://jackson:8080"
traefik.http.routers.nflproxy.service: nflproxy
traefik.http.routers.nflproxy.rule: "Host(`nfl.fntz.net`)"
traefik.http.routers.nflproxy.entrypoints: webSecure