LocalDockerEnv/docker-compose.yml

119 lines
2.6 KiB
YAML

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"