diff options
author | Elizabeth Hunt <me@liz.coffee> | 2025-03-15 00:50:34 -0700 |
---|---|---|
committer | Elizabeth Hunt <me@liz.coffee> | 2025-03-15 00:50:34 -0700 |
commit | fb7e6890d8516618fa3baec0edf84048e2b6601d (patch) | |
tree | a7bc5cfce71288ab69e8fa590d0f02df90c55385 /playbooks/roles/nginx-proxy | |
download | infra-fb7e6890d8516618fa3baec0edf84048e2b6601d.tar.gz infra-fb7e6890d8516618fa3baec0edf84048e2b6601d.zip |
a docker swarm
Diffstat (limited to 'playbooks/roles/nginx-proxy')
-rw-r--r-- | playbooks/roles/nginx-proxy/handlers/main.yml | 7 | ||||
-rw-r--r-- | playbooks/roles/nginx-proxy/tasks/main.yml | 17 | ||||
-rw-r--r-- | playbooks/roles/nginx-proxy/templates/docker-compose.yml | 38 |
3 files changed, 62 insertions, 0 deletions
diff --git a/playbooks/roles/nginx-proxy/handlers/main.yml b/playbooks/roles/nginx-proxy/handlers/main.yml new file mode 100644 index 0000000..43302b5 --- /dev/null +++ b/playbooks/roles/nginx-proxy/handlers/main.yml @@ -0,0 +1,7 @@ +--- + +- name: (Re)start nginx-proxy + ansible.builtin.service: + name: docker-compose@nginx-proxy + state: restarted + enabled: true diff --git a/playbooks/roles/nginx-proxy/tasks/main.yml b/playbooks/roles/nginx-proxy/tasks/main.yml new file mode 100644 index 0000000..9c14072 --- /dev/null +++ b/playbooks/roles/nginx-proxy/tasks/main.yml @@ -0,0 +1,17 @@ +--- + +- name: Build nginx-proxy compose dirs + ansible.builtin.file: + state: directory + dest: '/etc/docker/compose/nginx-proxy/{{ item.path }}' + with_filetree: '../templates' + when: item.state == 'directory' + +- name: Build nginx-proxy compose files + ansible.builtin.template: + src: '{{ item.src }}' + dest: '/etc/docker/compose/nginx-proxy/{{ item.path }}' + with_filetree: '../templates' + when: item.state == 'file' + notify: + - (Re)start nginx-proxy diff --git a/playbooks/roles/nginx-proxy/templates/docker-compose.yml b/playbooks/roles/nginx-proxy/templates/docker-compose.yml new file mode 100644 index 0000000..fd49712 --- /dev/null +++ b/playbooks/roles/nginx-proxy/templates/docker-compose.yml @@ -0,0 +1,38 @@ +--- + +services: + nginx-proxy: + image: nginxproxy/nginx-proxy + container_name: nginx-proxy + ports: + - "80:80" + - "443:443" + volumes: + - /var/run/docker.sock:/tmp/docker.sock:ro + - ./certs:/etc/nginx/certs + networks: + - proxy + labels: + - com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy + + nginx-acme-companion: + image: nginxproxy/acme-companion + depends_on: + - nginx-proxy + volumes: + - /var/run/docker.sock:/var/run/docker.sock:ro + - acme:/etc/acme.sh + - ./certs:/etc/nginx/certs + environment: + - "DEFAULT_EMAIL={{ certs_email }}" + - "ACME_CHALLENGE=DNS-01" + - "ACMESH_DNS_API_CONFIG={'DNS_API': 'dns_cf', 'CF_Key': '{{ cloudflare_token }}', 'CF_Email': '{{ cloudflare_email }}'}" + networks: + - proxy + +volumes: + acme: + +networks: + proxy: + name: proxy |