version: '2' networks: caddy: internal: true services: caddy: image: lucaslorentz/caddy-docker-proxy ports: - 80:80 - 443:443 networks: - caddy - default volumes: - /var/run/docker.sock:/var/run/docker.sock # this volume is needed to keep the certificates # otherwise, new ones will be re-issued upon restart - ./caddy_data:/data labels: # Global options caddy.email: arne.schroeder@mailbox.org mqtt: image: eclipse-mosquitto:latest container_name: mqtt ports: - 1883:1883 - 9001:9001 volumes: - ./mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf - ./mqtt/data:/mosquitto/data - ./mqtt/log:/mosquotto/log restart: always networks: - default influxdb: image: influxdb:latest container_name: influxdb ports: - 8086:8086 environment: - INFLUXDB_DB=data - INFLUXDB_ADMIN_USER=admin - INFLUXDB_ADMIN_PASSWORD=Schroeder87 - INFLUXDB_USER=arne - INFLUXDB_USER_PASSWORD=Schroeder87 volumes: - ./influxdb:/var/lib/influxdb restart: always networks: - default - caddy grafana: image: grafana/grafana:7.2.0 container_name: grafana environment: - GF_SECURITY_ADMIN_PASSWORD=Schroeder87 depends_on: - influxdb volumes: - ./grafana:/var/lib/grafana labels: caddy: grafana.devsrv.fritz.box caddy.reverse_proxy: "{{upstreams 3000}}" caddy.tls: "internal" restart: always networks: - caddy heimdall: image: linuxserver/heimdall container_name: heimdall environment: - PUID=1000 - PGID=1000 - TZ=Europe/Berlin volumes: - ./heimdall:/config labels: caddy: devsrv.fritz.box caddy.reverse_proxy: "{{upstreams 80}}" caddy.tls: "internal" restart: always networks: - caddy bitwarden: image: bitwardenrs/server:1.16.3-alpine container_name: bitwarden environment: WEBSOCKET_ENABLED: 'true' SIGNUPS_ALLOWED: 'true' volumes: - ./bitwarden:/data labels: caddy: pw.fritz.box caddy.reverse_proxy: "{{upstreams 80}}" caddy.tls: "internal" restart: always networks: - caddy echo_0: image: brndnmtthws/nginx-echo-headers networks: - caddy labels: caddy: echo0.devsrv.fritz.box caddy.@match.path: "/sourcepath /sourcepath/*" caddy.route: "@match" caddy.route.0_uri: "strip_prefix /sourcepath" caddy.route.1_rewrite: "* /targetpath{path}" caddy.route.2_reverse_proxy: "{{upstreams 8080}}" caddy.tls: "internal"