--- jupyter: # pw: letscode.00 host: himbeere: fqdn: code.cere.duckdns.org docker: build: jupyter ports: 17888:80 volumes: - /mnt/ssdext/data/jupyter/notebooks:/root/notebooks - /mnt/ssdext/data/jupyter/config:/root/.local - /mnt/ssdext/data/jupyter/config_root:/root/.jupyter #~ blaubeere: #~ docker: #~ build: jupyter #~ ports: 17888:8888 #~ volumes: #~ - /opt/jupyter/notebooks:/root/notebooks #~ - /opt/jupyter/config:/root/.local #~ - /opt/jupyter/config_root:/root/.jupyter docker: build: jupyter jlab: host: stachelbeere docker: build: jlab image: jlab ports: 80:8888 volumes: - /opt/jlab/notebooks:/root/notebooks domoticz: host: himbeere fqdn: domo.cere.duckdns.org docker: build: domoticz image: domoticz #~ image: domoticz/domoticz:stable volumes: # - /etc/localtime:/etc/localtime # - /mnt/ssdext/data/domoticz/domoticz.db:/root/domoticz/domoticz.db - /mnt/ssdext/data/domoticz:/opt/domoticz/userdata ports: 8080:80 devices: /dev/ttyUSB0 env: TZ: Europe/Amsterdam WWW_PORT: 80 commands: backup_db: /bin/bash -c "cp -p /opt/domoticz/userdata/domoticz.db /opt/domoticz/userdata/domoticz.db.`date +%Y.%m.%d.%H.%M.%S`" cleanup_meter_values: python3 /fix_meter_values.py #~ influxdb: # receive data from domoticz #~ host: himbeere #~ fqdn: influx.cere.duckdns.org #~ docker: #~ image: arm32v7/influxdb:latest #~ volumes: #~ - /mnt/ssdext/data/influxdb/data:/var/lib/influxdb2 #~ # - /mnt/ssdext/data/influxdb/config:/etc/influxdb2 #~ env: #~ VIRTUAL_PORT: 8086 #~ # DOCKER_INFLUXDB_INIT_MODE: setup #~ # DOCKER_INFLUXDB_INIT_USERNAME: dirk #~ # DOCKER_INFLUXDB_INIT_PASSWORD: "#*influx.00" #~ # DOCKER_INFLUXDB_INIT_ORG: rothe #~ # DOCKER_INFLUXDB_INIT_BUCKET: home_bucket #~ # DOCKER_INFLUXDB_INIT_RETENTION: 1w #~ # DOCKER_INFLUXDB_INIT_ADMIN_TOKEN: "123XY.00" #~ INFLUXDB_REPORTING_DISABLED: true #~ INFLUXDB_ADMIN_USER: influx_admin #~ INFLUXDB_ADMIN_PASSWORD: pass #~ INFLUXDB_HTTP_AUTH_ENABLED: "true" #~ chronograf: #~ host: himbeere #~ fqdn: chronograf.cere.duckdns.org #~ docker: #~ image: arm32v7/chronograf:latest #~ volumes: #~ - /mnt/ssdext/data/chronograf/data:/var/lib/chronograf #~ env: #~ VIRTUAL_PORT: 8888 grafana: host: himbeere fqdn: grafana.cere.duckdns.org docker: image: grafana/grafana-oss env: VIRTUAL_PORT: 3000 volumes: # see https://grafana.com/docs/grafana/v9.0/setup-grafana/configure-docker/#default-paths - /mnt/ssdext/data/grafana/data:/var/lib/grafana - /mnt/ssdext/data/grafana/log:/var/log/grafana - /mnt/ssdext/data/grafana/plugins:/var/lib/grafana/plugins graphite: # https://hub.docker.com/r/graphiteapp/graphite-statsd/ host: himbeere docker: #~ build: graphite image: graphiteapp/graphite-statsd volumes: - /mnt/ssdext/data/graphite/storage:/opt/graphite/storage - /mnt/ssdext/data/graphite/log:/var/log - /mnt/ssdext/data/graphite/redis:/var/lib/redis #~ - /mnt/ssdext/data/graphite/logs:/var/log/supervisor #~ ports: #~ - 13080:8000 #~ - 8125:8125/udp #~ - 8126:8126 netdata: host: himbeere #~ fqdn: netdata.cere.duckdns.org docker: hostname: himbeere build: netdata # image: reneluria/netdata cap_add: SYS_PTRACE volumes: - /proc:/host/proc:ro - /sys:/host/sys:ro - /var/run/docker.sock:/var/run/docker.sock ports: 0.0.0.0:19999:19999 # https://github.com/mkueper/rpi-svn svn: host: himbeere docker: build: svn volumes: - /mnt/ssdext/data/svn:/var/svn ports: 3690:3690 stop_signal: SIGKILL ngp: # nginx proxy with lets encrypt host: himbeere docker: - name: nginx-proxy build: ngp ports: 192.168.178.43:1080:80, 192.168.178.43:1443:443 volumes: - /usr/share/nginx/html - /mnt/ssdext/data/nginx/htpasswd:/etc/nginx/htpasswd \ - /var/run/docker.sock:/tmp/docker.sock:ro - /mnt/ssdext/data/nginx/certs:/etc/nginx/certs:ro # see https://github.com/jwilder/nginx-proxy#per-virtual_host - /mnt/ssdext/data/nginx/vhost.d:/etc/nginx/vhost.d:ro labels: com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: "true" commands: nginx_conf: method: exec cmd: cat /etc/nginx/conf.d/default.conf docs: show dockergen-generated config - name: ngp_le build: ngp_le volumes_from: nginx-proxy volumes: - /mnt/ssdext/data/nginx/certs:/etc/nginx/certs:rw - /var/run/docker.sock:/var/run/docker.sock:ro - /mnt/ssdext/data/nginx/vhost.d:/etc/nginx/vhost.d:rw #~ nexus: #~ host: himbeere #~ docker: #~ build: nexus #~ volumes: #~ - /etc/localtime:/etc/localtime #~ - /mnt/ssdext/data/nexus:/opt/sonatype-work #~ ports: 1381:8081 #~ pypy: #~ host: himbeere #~ docker: #~ build: pypy #~ volumes: #~ - /etc/localtime:/etc/localtime piusv: host: himbeere docker: build: piusv devices: /dev/i2c-1 # S.USV Daemon started.. # Kann nicht auf export schreiben! # : Read-only file system privileged: true volumes: /mnt/ssdext/data/piusv/log:/var/log/ commands: # Zwei I²C-Adressen sind im Einsatz – 0x0F für die S.USV und 0x68 für die Real Time Clock, # die sich auf der S.USV befindet i2cdetect: i2cdetect -y 1 # Der S.USV Daemon erstellt ein Protokoll in der Datei: /var/log/susvd.log usv_logs: tail -f -n 100 /var/log/susvd.log rsync: host: himbeere docker: build: rsync volumes: - /etc/localtime:/etc/localtime - /mnt/ssdext/data:/opt/from - /mnt/hddext/backup:/opt/to restart_policy: always: 3 gogs: # git server with wiki host: himbeere fqdn: git.cere.duckdns.org docker: image: gogs/gogs-rpi volumes: /mnt/ssdext/data/gogs:/data ports: 3022:22 env: VIRTUAL_PORT: 3000 healthcheck: test: curl -I --silent http://localhost:3000 | grep "404 Not Found" interval: 10 # seconds alexa: # https://alexa.amazon.de fqdn: alexa.cere.duckdns.org host: himbeere docker: build: alexa env: DOMO_ALEXA_PW: ibm92buVQ12nhipkP4fg matrix-zmq: host: waldbeere docker: init: true build: matrix-zmq # matrix driver needs access to /dev/mem privileged: true ports: 1337:1337 # --led-slowdown-gpio=2 --led-pwm-lsb-nanoseconds=50 command: '--led-pixel-mapper=Rotate:180 --led-pwm-dither-bits=2 --led-pwm-lsb-nanoseconds=100 --led-gpio-mapping=adafruit-hat-pwm --led-show-refresh --led-brightness=80 --led-cols=192 --led-rows=32 --zmq-endpoint=tcp://*:1337' matrix-ft: host: blaubeere docker: init: true build: flaschentaschen # matrix driver needs access to /dev/mem privileged: true ports: 1337:1337/udp # --led-pwm-dither-bits=1 command: '/server --layer-timeout 3600 --led-pixel-mapper=Rotate:180 --led-rows=64 --led-cols=192 --led-brightness=60 --led-slowdown-gpio=3 --led-show-refresh --led-pwm-lsb-nanoseconds=150' commands: d_life: /root/ft-demos/life -g 192x64 -d 50 d_matrix: /root/ft-demos/matrix -g 192x64 d_quilt: /root/ft-demos/quilt -g 192x64 d_fractal: /root/ft-demos/fractal -g 192x64 d_hack: /root/ft-demos/hack -g 192x64 d_midi: /root/ft-demos/midi -g 192x64 d_maze: /root/ft-demos/maze -g 192x64 d_plasma: /root/ft-demos/plasma -g 192x64 d_lines: /root/ft-demos/lines -g 192x64 -a one d_boxes: /root/ft-demos/blur -g 192x64 boxes d_bolt: /root/ft-demos/blur -g 192x64 bolt d_sierpinski: /root/ft-demos/sierpinski -g 192x64 matrix-ft-brom: host: brombeere docker: init: true build: flaschentaschen # matrix driver needs access to /dev/mem privileged: true ports: 1337:1337/udp # --led-pwm-dither-bits=1 command: '/server --layer-timeout 36000 --led-rgb-sequence=BRG --led-rows=64 --led-cols=128 --led-parallel=2 --led-brightness=60 --led-slowdown-gpio=1 --led-show-refresh --led-pwm-lsb-nanoseconds=180' commands: d_life: /root/ft-demos/life -g 128x128 -d 50 d_matrix: /root/ft-demos/matrix -g 128x128 d_quilt: /root/ft-demos/quilt -g 128x128 d_fractal: /root/ft-demos/fractal -g 128x128 d_hack: /root/ft-demos/hack -g 128x128 d_midi: /root/ft-demos/midi -g 128x128 d_maze: /root/ft-demos/maze -g 128x128 d_plasma: /root/ft-demos/plasma -g 128x128 d_lines: /root/ft-demos/lines -g 128x128 -a one d_boxes: /root/ft-demos/blur -g 128x128 boxes d_bolt: /root/ft-demos/blur -g 128x128 bolt d_sierpinski: /root/ft-demos/sierpinski -g 128x128 matrix-brom: host: blaubeere docker: init: true build: matrix/light import: pixel # matrix driver needs access to /dev/mem privileged: true # ports: 10000:10000/udp, 10001:10001/udp volumes: - /opt/pixel:/pixel env: LED_ROWS: 64 LED_COLS: 64 commands: # some rotating square demo00: examples-api-use/demo --led-rows=64 --led-cols=64 --led-show-refresh -D 0 matrix: # interface with RGB LED-Matrix host: waldbeere docker: init: true build: matrix/fat # matrix driver needs access to /dev/mem privileged: true ports: 17888:8888, 10000:10000/udp, 10001:10001/udp volumes: - /opt/jupyter/notebooks:/root/notebooks - /opt/jupyter/config:/root/.local - /opt/jupyter/config_root:/root/.jupyter - /opt/jupyter/config_ipy_root:/root/.ipython - /opt/pixel:/pixel commands: # some rotating square demo00: examples-api-use/demo -c 6 -R 180 --led-show-refresh -D0 # forward scrolling an image demo01: examples-api-use/demo -c 6 -R 180 --led-show-refresh -D1 examples-api-use/runtext.ppm # test image demo03: examples-api-use/demo -c 6 -R 180 -D3 # Abelian sandpile model (-m ) demo06: examples-api-use/demo -c 6 -R 180 -D6 # Conway's game of life (-m ) demo07: /bin/bash -c "while true; do examples-api-use/demo -c 6 -R 180 -b 100 -D7 -t 15; done" # Langton's ant (-m ) demo08: examples-api-use/demo -c 6 -R 180 -m 1 --led-show-refresh -D8 # Volume bars demo09: examples-api-use/demo -c 6 -R 180 -D9 # Evolution of color demo10: examples-api-use/demo -c 6 -R 180 -D10 # Brightness pulse generator demo11: examples-api-use/demo -c 6 -R 180 --led-pwm-bits=11 -D11 # python sample: rotatatin block pydemo1: bindings/python/samples/rotating-block-generator.py -c 6 -R 180 --led-show-refresh # python sample: like demo01 pydemo2: bindings/python/samples/image-scroller.py -c 6 -R 180 --led-show-refresh -i examples-api-use/runtext.ppm # python sample: rotatatin block pydemo3: bindings/python/samples/simple-square.py -c 6 -R 180 --led-show-refresh # tail logs of pixelreceiver (udp server) pixel_logs: tail -f /pixel/receive.log # kill pixel receiver pixel_kill: pkill -f "python -u /pixelreceiver.py" matrix2: # zerow: interface with RGB LED-Matrix host: blaubeere docker: init: true build: matrix/light import: pixel # matrix driver needs access to /dev/mem privileged: true # ports: 10000:10000/udp, 10001:10001/udp volumes: - /opt/pixel:/pixel env: LED_ROWS: 64 LED_COLS: 192 commands: # some rotating square demo00: examples-api-use/demo --led-rows=64 --led-cols=192 --led-pixel-mapper=U-mapper;Rotate:180 --led-show-refresh -D 0 # forward scrolling an image demo01: examples-api-use/demo --led-rows=64 --led-cols=192 --led-pixel-mapper=U-mapper;Rotate:180 --led-show-refresh -D 1 examples-api-use/runtext.ppm # test image demo03: examples-api-use/demo --led-rows=64 --led-cols=192 -D 3 # Abelian sandpile model (-m ) demo06: examples-api-use/demo -c 6 --led-rows=64 -D 6 # Conway's game of life (-m ) demo07: /bin/bash -c "while true; do examples-api-use/demo --led-rows=64 --led-cols=192 --led-show-refresh -D 7 -m 20; done" # Langton's ant (-m ) demo08: examples-api-use/demo -c 6 --led-rows=64 -m 1 --led-show-refresh -D 8 # Volume bars demo09: examples-api-use/demo -c 6 --led-rows=64 -D 9 # Evolution of color demo10: examples-api-use/demo -c 6 --led-rows=64 -D 10 # Brightness pulse generator demo11: examples-api-use/demo --led-rows=64 --led-cols=192 --led-pwm-bits=11 -D 11 # python sample: rotatatin block pydemo1: bindings/python/samples/rotating-block-generator.py -c 6 --led-rows=64 --led-show-refresh # python sample: like demo01 pydemo2: bindings/python/samples/image-scroller.py -c 6 --led-rows=64 --led-show-refresh -i examples-api-use/runtext.ppm # python sample: rotatatin block pydemo3: bindings/python/samples/simple-square.py -c 6 --led-rows=64 --led-show-refresh # tail logs of pixelreceiver (udp server) pixel_logs: tail -f /pixel/receive.log # kill pixel receiver pixel_kill: pkill -f "python -u /pixelreceiver.py" vaping: host: waldbeere docker: build: vaping ports: 6080:7021 log_config: {type: none} streamripper: host: stachelbeere docker: build: streamripper volumes: - /opt/streamripper:/home/streamripper command: 'https://somafm.com/defcon256.pls -s -m 30 --xs2 -o never -T'