Test Repo für Ansible Semaphore
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

62 lines
2.2 KiB

---
- name: Deploy web-proxy with Docker and Traefik
hosts: all
become: yes
tasks:
- name: Create directory for web-proxy
file:
path: /mnt/docker/web-proxy/
state: directory
mode: '0755'
- name: Create docker-compose file
copy:
dest: /mnt/docker/web-proxy/docker-compose.yaml
content: |
version: "3"
services:
https-proxy:
image: traefik:v2.9
container_name: https-proxy
hostname: https-proxy
restart: unless-stopped
healthcheck:
test: grep -qr "traefik" /proc/*/status || exit 1
interval: 1m
timeout: 30s
retries: 3
ports:
- 9080:80
- 9443:443
command:
- "--api=true"
- "--api.dashboard=false"
- "--api.insecure=false"
- "--pilot.dashboard=false"
- "--global.sendAnonymousUsage=false"
- "--global.checkNewVersion=false"
- "--accesslog=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.http.address=:80"
- "--entrypoints.http.http.redirections.entrypoint.to=https"
- "--entrypoints.http.http.redirections.entrypoint.scheme=https"
- "--entrypoints.https=true"
- "--entrypoints.https.address=:443"
- "--certificatesResolvers.letsencrypt.acme.email=it-admin@asmodee.de"
- "--certificatesResolvers.letsencrypt.acme.storage=/etc/traefik/acme.json"
- "--certificatesResolvers.letsencrypt.acme.httpChallenge.entryPoint=http"
volumes:
- ./traefik:/etc/traefik
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
networks:
default:
name: build
external: true
- name: Run docker-compose
ansible.builtin.command:
chdir: /mnt/docker/web-proxy/
cmd: docker-compose up -d