first commit from PC

This commit is contained in:
2025-07-20 13:28:12 +10:00
parent a2971879f0
commit a27c86ffe9
42 changed files with 1551 additions and 0 deletions
+172
View File
@@ -0,0 +1,172 @@
version: "2.1"
services:
keeweb:
container_name: keeweb.alm.lan
restart: always
image: antelle/keeweb:latest
command: nginx
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.212
nagios.docker.lan:
ipv4_address: 192.168.249.212
searxng:
container_name: searxng.alm.lan
restart: always
build:
context: /home/${USER}/docker/builds/searxng
image: searxng
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.210
nagios.docker.lan:
ipv4_address: 192.168.249.210
tor-relay1:
container_name: tor-relay1.alm.lan
restart: always
env_file: /home/${USER}/docker/builds/relay1.env
build:
context: /home/${USER}/docker/builds/tor-relay
image: tor-relay
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.211
nagios.docker.lan:
ipv4_address: 192.168.249.211
tor-relay2:
container_name: tor-relay2.alm.lan
restart: always
env_file: /home/${USER}/docker/builds/relay2.env
build:
context: /home/${USER}/docker/builds/tor-relay
image: tor-relay
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.213
nagios.docker.lan:
ipv4_address: 192.168.249.213
webdav:
container_name: webdav.alm.lan
restart: always
build:
context: /home/${USER}/docker/builds/webdav
image: webdav
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.214
nagios.docker.lan:
ipv4_address: 192.168.249.214
volumes:
- /mnt/stream/docker/webdav:/var/www/html:rw
squid:
container_name: squid.alm.lan
restart: always
image: ubuntu/squid
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.216
nagios.docker.lan:
ipv4_address: 192.168.249.216
nagios:
container_name: nagios.alm.lan
restart: always
build:
context: /home/${USER}/docker/builds/my-nagios
image: my-nagios
volumes:
- /mnt/stream/docker/nagios:/usr/local/nagios/etc
- /mnt/3cx-backup:/mnt/3cx-backup
- /home/${USER}/.ssh:/home/nagios/.ssh
extra_hosts:
- "vhost.docker.lan:192.168.250.254"
networks:
alm.lan:
ipv4_address: 192.168.8.215
docker.lan:
ipv4_address: 192.168.250.215
nagios.docker.lan:
ipv4_address: 192.168.249.215
devices:
- "/dev/net/tun:/dev/net/tun"
cap_add:
- "net_admin"
portainer:
container_name: portainer.alm.lan
restart: always
image: portainer/portainer-ce
ports:
- 9443:443
- 9000:80
- 8000:8000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.231
nagios.docker.lan:
ipv4_address: 192.168.249.231
pihole2:
container_name: pihole2.alm.lan
restart: always
build:
context: /home/${USER}/docker/builds/pihole
image: pihole-new
volumes:
- /mnt/stream/docker/openvpn/server.conf:/etc/openvpn
- /mnt/stream/docker/ovpns:/home/pi/ovpns
- /home/${USER}/.ssh:/home/pi/.ssh
extra_hosts:
- "stream.docker.lan:192.168.250.254"
networks:
alm.lan:
ipv4_address: 192.168.8.252
docker.lan:
ipv4_address: 192.168.250.252
environment:
TZ: 'Australia/Brisbane'
devices:
- "/dev/net/tun:/dev/net/tun"
cap_add:
- "net_admin"
networks:
alm.lan:
name: alm.lan
driver: ipvlan
driver_opts:
com.docker.network.enable_ipv6: "false"
parent: "enp0s3"
ipam:
driver: default
config:
- subnet: 192.168.8.0/24
gateway: 192.168.8.254
docker.lan:
name: docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.250.0/24
gateway: 192.168.250.254
nagios.docker.lan:
name: nagios.docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.249.0/24
gateway: 192.168.249.254
+134
View File
@@ -0,0 +1,134 @@
version: "2.1"
services:
tor-relay1:
container_name: tor-relay1.alm.lan
restart: always
env_file: /home/${USER}/docker/builds/relay1.env
image: registry.alm.lan/tor-relay
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
networks:
alm.lan:
ipv4_address: 192.168.8.211
nagios.docker.lan:
ipv4_address: 192.168.249.211
tor-relay2:
container_name: tor-relay2.alm.lan
restart: always
env_file: /home/${USER}/docker/builds/relay2.env
image: registry.alm.lan/tor-relay
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
networks:
alm.lan:
ipv4_address: 192.168.8.213
nagios.docker.lan:
ipv4_address: 192.168.249.213
nagios:
container_name: nagios.alm.lan
restart: always
image: registry.alm.lan/nagios
volumes:
- /mnt/stream/docker/nagios:/usr/local/nagios/etc
- /mnt/3cx-backup:/mnt/3cx-backup
- /home/${USER}/.ssh:/home/nagios/.ssh
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
extra_hosts:
- "vhost.docker.lan:192.168.250.254"
networks:
alm.lan:
ipv4_address: 192.168.8.215
docker.lan:
ipv4_address: 192.168.250.215
nagios.docker.lan:
ipv4_address: 192.168.249.215
devices:
- "/dev/net/tun:/dev/net/tun"
cap_add:
- "net_admin"
pihole2:
container_name: pihole2.alm.lan
restart: always
image: registry.alm.lan/pihole
volumes:
- pivpn-etc:/etc/openvpn
- pivpn-ovpns:/home/pi/ovpns
- /home/${USER}/.ssh:/home/pi/.ssh
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
- pihole-dnsmasq:/etc/dnsmasq.d
- pihole-etc:/etc/pihole
extra_hosts:
- "stream.docker.lan:192.168.250.254"
networks:
alm.lan:
ipv4_address: 192.168.8.252
docker.lan:
ipv4_address: 192.168.250.252
environment:
TZ: 'Australia/Brisbane'
devices:
- "/dev/net/tun:/dev/net/tun"
cap_add:
- "net_admin"
volumes:
pihole-etc:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/pihole/etc"
o: "addr=nfs.alm.lan,rw,nfsvers=4,async"
pihole-dnsmasq:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/pihole/dnsmasq.d"
o: "addr=nfs.alm.lan,rw,nfsvers=4,async"
pivpn-ovpns:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/pivpn/ovpns"
o: "addr=nfs.alm.lan,rw,nfsvers=4,async"
pivpn-etc:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/pivpn/etc"
o: "addr=nfs.alm.lan,rw,nfsvers=4,async"
networks:
alm.lan:
name: alm.lan
driver: ipvlan
driver_opts:
com.docker.network.enable_ipv6: "false"
parent: "enp0s3"
ipam:
driver: default
config:
- subnet: 192.168.8.0/24
gateway: 192.168.8.254
docker.lan:
name: docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.250.0/24
gateway: 192.168.250.254
nagios.docker.lan:
name: nagios.docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.249.0/24
gateway: 192.168.249.254
+44
View File
@@ -0,0 +1,44 @@
version: '3.2'
services:
agent:
image: portainer/agent
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
networks:
- agent_network
deploy:
mode: global
placement:
constraints: [node.platform.os == linux]
portainer:
image: portainer/portainer-ce
command: -H tcp://tasks.agent:9001 --tlsskipverify
ports:
- "9443:9443"
- "9000:9000"
- "8000:8000"
volumes:
- portainer-data:/data:rw
- "/var/run/docker.sock:/var/run/docker.sock"
networks:
- agent_network
deploy:
mode: replicated
placement:
constraints: [node.role == manager]
networks:
agent_network:
driver: overlay
attachable: true
volumes:
portainer-data:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/portainer"
o: "addr=192.168.8.231,rw,nfsvers=4,async"
+48
View File
@@ -0,0 +1,48 @@
version: "2.1"
services:
portainer:
container_name: portainer.alm.lan
restart: always
image: portainer/portainer-ce
ports:
- 9443:443
- 9000:80
- 8000:8000
volumes:
- /var/run/docker.sock:/var/run/docker.sock
extra_hosts:
- "nagios.docker.lan:192.168.249.215"
networks:
alm.lan:
ipv4_address: 192.168.8.231
nagios.docker.lan:
ipv4_address: 192.168.249.231
networks:
alm.lan:
name: alm.lan
driver: ipvlan
driver_opts:
com.docker.network.enable_ipv6: "false"
parent: "enp0s3"
ipam:
driver: default
config:
- subnet: 192.168.8.0/24
gateway: 192.168.8.254
docker.lan:
name: docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.250.0/24
gateway: 192.168.250.254
nagios.docker.lan:
name: nagios.docker.lan
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
config:
- subnet: 192.168.249.0/24
gateway: 192.168.249.254
+40
View File
@@ -0,0 +1,40 @@
#!/bin/bash
APP="app"
QM=0
usage() {
echo "Usage: $0 [-p project name. default is app] and [-q quiet mode optional list compose services to recreate]" 1>&2
exit 1
}
while getopts "p:q:h" o; do
case "${o}" in
p)
APP=${OPTARG}
;;
q)
SERVICES=${OPTARG}
QM=1
;;
h)
usage
;;
esac
done
shift $((OPTIND-1))
#if [[ $QM == 1 ]] && [ -z "${q}" ]; then
# usage
#fi
pushd ~/docker
if [ $QM = 0 ]; then
docker-compose ps --services
read -p "Enter services to recreate... " SERVICES
fi
for SERVICE in $SERVICES
do
docker-compose -p $APP stop $SERVICE
docker-compose -p $APP rm -f $SERVICE
docker-compose -p $APP up -d $SERVICE
done
popd
+3
View File
@@ -0,0 +1,3 @@
#!/bin/bash
/mnt/docker-persistent-data/recreate-containers.sh -q "nextcloud nextcloud_db"
+3
View File
@@ -0,0 +1,3 @@
#!/bin/bash
/mnt/docker-persistent-data/recreate-containers.sh -q "passbolt passbolt_db"
+6
View File
@@ -0,0 +1,6 @@
#!/bin/bash
pushd ~/docker
docker-compose pull
docker-compose -p app up -d
docker system prune -f
popd
+17
View File
@@ -0,0 +1,17 @@
FROM debian:latest
ENV DEBIAN_FRONTEND=noninteractive
ENV AUTOSSH_DEBUG=1
ENV AUTOSSH_LOGFILE=/root/log/autossh_log_file.log
RUN apt-get update && apt-get upgrade -y && apt-get install -y autossh
RUN mkdir /root/.ssh /root/log
CMD [ "autossh \
-R nextcloud.lan.ddnsgeek.com:80:localhost:8083 \
-R nextcloud.lan.ddnsgeek.com:443:localhost:4433 \
-R passbolt.lan.ddnsgeek.com:443:localhost:4432 \
-R passbolt.lan.ddnsgeek.com:80:localhost:8082 \
-R webdav.lan.ddnsgeek.com:80:localhost:8080 \
-R searxng.lan.ddnsgeek.com:80:localhost:8081 \
-E /home/wayne/ssh_log_file.log \
-o ServerAliveInterval 10 -o ServerAliveCountMax 3 \
-i /home/wayne/.ssh/id_rsa -N -f serveo.net" ]
+30
View File
@@ -0,0 +1,30 @@
version: "3"
services:
server:
hostname: autossh.sweet.home
image: farmcoolcow/autossh
# build:
# context: .
# dockerfile: Dockerfile
# volumes:
# - .:/etc/unbound/unbound.conf.d
restart: always
# network_mode: host
# privileged: true
labels:
- "io.portainer.accesscontrol.public"
ports:
- 80:80
- 443:443
command:
- -R nextcloud.lan.ddnsgeek.com:80:localhost:8083 \
-E /home/wayne/ssh_log_file.log" \
-o "ServerAliveInterval 10" \
-o "ServerAliveCountMax 3" \
-i /home/wayne/.ssh/id_rsa \
-N -f serveo.net
environment:
- AUTOSSH_DEBUG=1
- AUTOSSH_LOGFILE=/home/wayne/autossh_log_file.log
volumes:
- ./install:/install
+19
View File
@@ -0,0 +1,19 @@
FROM snowzach/doods2:latest
RUN groupadd -r doods && useradd -m -s /bin/bash -d /opt/doods -g doods doods
RUN chsh -s /usr/sbin/nologin root
RUN chown -R doods:doods /opt/doods
ENV PATH "${PATH}:/opt/doods"
ENV HOME /opt/doods
USER doods
ENTRYPOINT ["python3", "main.py"]
CMD ["api"]
+9
View File
@@ -0,0 +1,9 @@
doods:
detectors:
- name: default
type: tflite
modelFile: models/coco_ssd_mobilenet_v1_1.0_quant.tflite
labelFile: models/coco_labels0.txt
numThreads: 4
numConcurrent: 4
hwAccel: false
+46
View File
@@ -0,0 +1,46 @@
version: "3"
services:
service:
# image: "beatzaplenty/doods2"
image: snowzach/doods2:latest
read_only: true
tmpfs:
- /tmp
- /var
- /run
hostname: doods.alm.lan
# build:
# context: .
# dockerfile: Dockerfile
volumes:
- ./models/:/opt/doods/models/:rw
- ./config.yaml:/opt/doods/config.yaml
restart: unless-stopped
networks:
- traefik_default
labels:
- "io.portainer.accesscontrol.public"
- "traefik.http.routers.doods.rule=Host(`doods.lan.ddnsgeek.com`)"
- "traefik.enable=true"
- "traefik.http.routers.doods.entrypoints=websecure"
- "traefik.http.routers.doods.tls.certresolver=myresolver"
- "traefik.http.routers.doods.middlewares=error-pages-middleware"
- "traefik.http.services.doods.loadbalancer.server.port=8080"
deploy:
resources:
limits:
cpus: '0.05'
memory: 350m
# pids: 2
restart_policy:
condition: on-failure
max_attempts: 5
healthcheck:
test: "curl --fail http://localhost:8080 || exit 1"
networks:
traefik_default:
external: true
+36
View File
@@ -0,0 +1,36 @@
#!/bin/bash
mkdir -p models
# coco_ssd_mobilenet_v1_1.0_quant_2018_06_29
wget https://storage.googleapis.com/download.tensorflow.org/models/tflite/coco_ssd_mobilenet_v1_1.0_quant_2018_06_29.zip && unzip coco_ssd_mobilenet_v1_1.0_quant_2018_06_29.zip && rm coco_ssd_mobilenet_v1_1.0_quant_2018_06_29.zip && mv detect.tflite models/coco_ssd_mobilenet_v1_1.0_quant.tflite && rm labelmap.txt
wget https://dl.google.com/coral/canned_models/coco_labels.txt && mv coco_labels.txt models/coco_labels0.txt
# mobilenet_ssd_v2_coco_quant_postprocess_edgetpu
wget https://dl.google.com/coral/canned_models/mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite && mv mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite models/mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite
# faster_rcnn_inception_v2_coco_2018_01_28
wget http://download.tensorflow.org/models/object_detection/faster_rcnn_inception_v2_coco_2018_01_28.tar.gz && tar -zxvf faster_rcnn_inception_v2_coco_2018_01_28.tar.gz faster_rcnn_inception_v2_coco_2018_01_28/frozen_inference_graph.pb --strip=1 && mv frozen_inference_graph.pb models/faster_rcnn_inception_v2_coco_2018_01_28.pb && rm faster_rcnn_inception_v2_coco_2018_01_28.tar.gz
wget https://raw.githubusercontent.com/amikelive/coco-labels/master/coco-labels-2014_2017.txt && mv coco-labels-2014_2017.txt models/coco_labels1.txt
cat << EOF > example.yaml
doods:
detectors:
- name: default
type: tflite
modelFile: models/coco_ssd_mobilenet_v1_1.0_quant.tflite
labelFile: models/coco_labels0.txt
numThreads: 0
numConcurrent: 4
- name: edgetpu
type: tflite
modelFile: models/mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite
labelFile: models/coco_labels0.txt
numThreads: 0
numConcurrent: 4
hwAccel: true
- name: tensorflow
type: tensorflow
modelFile: models/faster_rcnn_inception_v2_coco_2018_01_28.pb
labelFile: models/coco_labels1.txt
width: 224
height: 224
numThreads: 0
numConcurrent: 4
EOF
Executable
+2
View File
@@ -0,0 +1,2 @@
#!/bin/bash
echo url="https://api.dynu.com/nic/update?location=linode&username=beatzaplenty&password=pf4!*mUjV177UG1" | curl -k -o /var/log/dynu.log -K -
+17
View File
@@ -0,0 +1,17 @@
FROM ghcr.io/esphome/esphome
RUN groupadd -r esphome && useradd -m -s /bin/bash -d /home/esphome -g esphome esphome
RUN chsh -s /usr/sbin/nologin root
RUN chown -R esphome:esphome /home/esphome
RUN chown -R esphome:esphome /config
RUN chown -R esphome:esphome /piolibs
#ENV PATH "${PATH}:/opt/doods"
ENV HOME /home/esphome
USER esphome
# ENTRYPOINT ["python3", "main.py"]
# CMD ["api"]
+47
View File
@@ -0,0 +1,47 @@
#!/bin/bash
CONFIG="default_configuration.yaml"
FILE=$1
#Insert version number
awk '/type: arduino/{print $0 RS " version: 2.0.6";next}1' $FILE > tmp
rm $FILE
mv tmp $FILE
#remove random ota password
sed '20d' $FILE > tmp
rm $FILE
mv tmp $FILE
#Insert ota password
awk '/ota:/{print $0 RS " password: !secret ota_password";next}1' $FILE > tmp
rm $FILE
mv tmp $FILE
#remove default wifi config
sed '23d;24d' $FILE > tmp
rm $FILE
mv tmp $FILE
#Insert wifi Config
ed $FILE <<END
22a
$(sed -n 2,7p $CONFIG)
.
wq
END
# Append remaining config
ed $FILE <<END
36a
$(sed -n 8,25p $CONFIG)
.
wq
END
+5
View File
@@ -0,0 +1,5 @@
# Gitignore settings for ESPHome
# This is an example and may include too much for your use-case.
# You can modify this file to suit your needs.
/.esphome/
/secrets.yaml
+238
View File
@@ -0,0 +1,238 @@
esphome:
name: esphome-garage
friendly_name: esphome garage
esp32:
board: esp32-s3-devkitc-1
framework:
type: arduino
version: 2.0.6
external_components:
- source: github://Jorre05/remote_receiver
components: [ remote_receiver ]
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "JSYF44AI5ggGlJbuezald9//7NzOqQ0xeixs2NeEna8="
ota:
password: !secret ota_password
wifi:
networks:
- ssid: !secret ssid_garage
password: !secret wifi_password
- ssid: !secret ssid_house
password: !secret wifi_password
domain: .alm.lan
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "Esphome-Garage Fallback Hotspot"
password: "TxX9BHoIG7GT"
captive_portal:
time:
- platform: homeassistant
id: homeassistant_time
timezone: Australia/Brisbane
remote_receiver:
pin:
number: 40
inverted: true
mode:
input: true
pullup: true
rmt_channel: 5
dump: raw
buffer_size: 20kb
tolerance: 50%
filter: 250us
idle: 4ms
remote_transmitter:
pin:
number: 42
# Infrared remotes use a 50% carrier signal
carrier_duty_percent: 50%
binary_sensor:
- platform: status
name: "Availibility"
- platform: gpio
pin:
number: 8
mode:
input: true
pullup: true
name: "Motion Detection"
sensor:
- platform: wifi_signal
name: "WiFi Signal Strength"
update_interval: 60s
- platform: uptime
name: Uptime
- platform: internal_temperature
name: "Internal Temperature"
button:
- platform: restart
name: "Reset"
- platform: template
id: sound_bar_mute
name: Sound Bar Mute
icon: "mdi:volume-mute"
on_press:
- remote_transmitter.transmit_raw:
code: [9165, -4370, 709, -1563, 698, -1549, 700, -1547, 701, -1546, 700, -1547, 697, -435, 705, -1546, 697, -1550, 695, -439, 703, -1547, 697, -1550, 701, -431, 700, -438, 701, -1551, 698, -431, 705, -1550, 696, -434, 706, -537, 705, -1442, 699, -1442, 697, -544, 704, -1546, 698, -1443, 700, -430, 709, -1543, 702, -1441, 701, -537, 709, -532, 707, -1435, 708, -430, 704, -534, 709, -1539, 709]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
code: [9167,-2118,729]
repeat:
times: 5
# wait_time: 240ms
- platform: template
id: sound_bar_vol_up
name: Sound Bar Vol +
icon: "mdi:volume-plus"
on_press:
- remote_transmitter.transmit_raw:
code: [9149, -4385, 687, -1581, 670, -1577, 670, -1577, 668, -1579, 670, -1577, 672, -455, 680, -1577, 670, -1578, 669, -460, 680, -1576, 669, -1578, 670, -462, 675, -460, 676, -1579, 668, -463, 674, -1579, 670, -462, 675, -1577, 669, -460, 677, -462, 674, -1579, 668, -1579, 668, -465, 672, -464, 672, -1578, 670, -464, 672, -1578, 670, -1577, 667, -467, 670, -467, 670, -1579, 668, -1579, 669]
carrier_frequency: 38kHz
- platform: template
id: sound_bar_vol_down
name: Sound Bar Vol -
icon: "mdi:volume-minus"
on_press:
- remote_transmitter.transmit_raw:
code: [9151, -4389, 685, -1582, 668, -1579, 667, -1580, 667, -1580, 668, -1580, 667, -466, 669, -1582, 667, -1581, 667, -467, 668, -1583, 667, -1580, 667, -467, 669, -468, 670, -1581, 668, -466, 669, -1581, 670, -1577, 669, -464, 670, -468, 668, -468, 669, -1582, 667, -1580, 668, -466, 669, -467, 671, -466, 670, -1580, 668, -1579, 668, -1580, 669, -466, 669, -468, 669, -1580, 668, -1580, 667]
carrier_frequency: 38kHz
- platform: template
id: ac_mode_heat
name: AC Mode Heat
icon: "mdi:heat-wave"
on_press:
- remote_transmitter.transmit_raw:
code: [3626, -3343, 1014, -761, 981, -761, 983, -2471, 1014, -2473, 1013, -761, 981, -733, 1011, -2471, 1014, -761, 982, -760, 983, -761, 981, -2473, 1012, -2474, 1012, -762, 1008, -734, 982, -2474, 1011, -763, 980, -762, 980, -790, 954, -2473, 1013, -2473, 1012, -762, 980, -762, 982, -762, 981, -761, 982, -762, 981, -761, 982, -2472, 1014, -2472, 1013, -762, 980, -761, 958, -784, 958, -785, 3596, -3347, 987, -782, 961, -782, 982, -2477, 986, -2500, 1009, -758, 985, -758, 984, -2477, 1009, -758, 984, -759, 984, -738, 1004, -2479, 1035, -2450, 1008, -732, 1014, -729, 1015, -2473, 1013, -727, 1015, -729, 1012, -731, 1012, -2476, 1007, -2478, 1006, -735, 1008, -735, 1006, -737, 1004, -739, 1001, -742, 1027, -717, 997, -2492, 990, -2519, 965, -776, 966, -777, 941, -802, 966, -777, 3552, -3423, 932]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3513, -3457, 900, -840, 902, -841, 903, -2585, 900, -841, 902, -841, 902, -842, 928, -814, 902, -841, 902, -841, 902, -841, 902, -2587, 898, -842, 901, -842, 901, -843, 900, -843, 900, -867, 876, -867, 876, -2611, 875, -2611, 874, -867, 876, -2613, 872, -2613, 873, -868, 902, -841, 875, -868, 876, -2611, 874, -2613, 873, -867, 874, -2615, 873, -2613, 872, -895, 847, -869, 3489, -3512, 845, -895, 848, -895, 848, -2641, 844, -896, 846, -897, 821, -922, 821, -923, 820, -923, 819, -950, 793, -950, 793, -2695, 790, -951, 792, -967, 776, -978, 764, -980, 763, -979, 316]
carrier_frequency: 38kHz
- platform: template
id: ac_mode_cool
name: AC Mode Cool
icon: "mdi:sun-snowflake"
on_press:
- remote_transmitter.transmit_raw:
code: [3625, -3345, 1012, -760, 1010, -2445, 1013, -2474, 1012, -760, 983, -787, 955, -761, 983, -2474, 1011, -786, 957, -760, 984, -2472, 1012, -2473, 1014, -758, 1011, -732, 984, -759, 1011, -2446, 1013, -758, 984, -759, 985, -2473, 1012, -758, 984, -2474, 1039, -759, 956, -759, 985, -785, 934, -781, 988, -756, 1011, -2448, 985, -784, 960, -2525, 959, -784, 960, -781, 962, -781, 987, -783, 3602, -3319, 1009, -756, 987, -2475, 1010, -2476, 1009, -757, 986, -757, 985, -734, 1009, -2477, 1035, -706, 1011, -758, 986, -2503, 982, -2476, 1008, -732, 1038, -705, 1037, -706, 1009, -2480, 1001, -739, 1005, -738, 1005, -2510, 972, -741, 1000, -2489, 1021, -719, 997, -747, 995, -776, 964, -779, 991, -725, 965, -2547, 939, -801, 940, -2549, 936, -805, 936, -807, 936, -807, 961, -782, 3517, -3459, 898]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3510, -3461, 897, -842, 928, -815, 902, -2587, 898, -843, 901, -870, 872, -868, 902, -840, 903, -840, 876, -867, 875, -895, 855, -2606, 873, -868, 875, -868, 902, -841, 875, -869, 874, -868, 875, -869, 875, -2613, 872, -2640, 874, -841, 874, -2614, 862, -2625, 843, -922, 822, -922, 820, -950, 793, -2668, 587, -2926, 271]
carrier_frequency: 38kHz
- platform: template
id: ac_mode_dry
name: AC Mode Dry
icon: "mdi:air-filter"
on_press:
- remote_transmitter.transmit_raw:
code: [3628, -3344, 989, -2495, 991, -2494, 991, -781, 962, -2495, 989, -2496, 990, -2496, 989, -2497, 1013, -2472, 989, -2497, 988, -2498, 989, -782, 960, -2496, 989, -2497, 989, -2497, 990, -2496, 989, -2495, 991, -2496, 989, -2496, 990, -780, 962, -2496, 989, -781, 986, -756, 988, -755, 962, -781, 986, -2473, 1013, -2473, 1012, -755, 964, -2498, 1010, -757, 987, -755, 986, -756, 987, -734, 3621, -3351, 1008, -2476, 1011, -2475, 1010, -731, 1011, -2478, 1006, -2479, 1004, -2482, 1002, -2483, 1003, -2483, 1002, -2483, 1000, -2486, 998, -742, 1001, -2487, 996, -2489, 996, -2491, 994, -2491, 992, -2495, 990, -2495, 965, -2522, 964, -778, 964, -2547, 937, -803, 940, -803, 938, -805, 936, -808, 934, -2554, 931, -2554, 930, -811, 929, -2560, 899, -842, 901, -842, 901, -841, 902, -841, 3516, -3459, 899]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3511, -3458, 900, -841, 902, -841, 901, -2587, 899, -843, 900, -842, 901, -843, 899, -844, 900, -867, 875, -868, 875, -868, 876, -2612, 873, -868, 875, -868, 875, -868, 875, -868, 876, -868, 881, -861, 876, -2612, 873, -2613, 873, -867, 875, -2614, 872, -2614, 871, -870, 850, -893, 847, -897, 845, -2668, 818, -2667, 819, -922, 820, -2668, 817, -2670, 761, -1006, 592, -1152, 412]
carrier_frequency: 38kHz
- platform: template
id: ac_mode_auto
name: AC Mode Auto
icon: "mdi:auto-mode"
on_press:
- remote_transmitter.transmit_raw:
code: [3602, -3368, 989, -782, 961, -782, 960, -2496, 989, -2496, 990, -782, 961, -2496, 988, -2498, 989, -782, 960, -783, 959, -784, 984, -2473, 987, -2498, 1012, -760, 983, -2474, 988, -2498, 1000, -769, 982, -2477, 986, -784, 983, -2476, 1012, -2473, 993, -777, 984, -759, 984, -759, 960, -783, 983, -2476, 985, -784, 959, -2500, 985, -2501, 1008, -761, 958, -760, 1008, -734, 1007, -734, 3624, -3350, 1009, -731, 1010, -733, 1010, -2476, 1011, -2476, 1011, -730, 1011, -2477, 1008, -2478, 1006, -734, 1007, -736, 1007, -735, 1005, -2483, 1003, -2484, 1001, -739, 1001, -2486, 1000, -2487, 998, -743, 974, -2513, 996, -745, 995, -2492, 994, -2492, 968, -773, 970, -773, 968, -775, 967, -776, 967, -2522, 963, -777, 966, -2522, 963, -2524, 961, -781, 961, -805, 937, -806, 936, -807, 3519, -3456, 902]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3512, -3458, 899, -841, 902, -841, 901, -2587, 899, -842, 901, -842, 901, -842, 901, -842, 909, -834, 903, -840, 902, -841, 903, -2586, 899, -841, 902, -840, 902, -842, 901, -841, 903, -841, 901, -842, 902, -2587, 898, -2587, 899, -842, 901, -2587, 898, -2588, 898, -867, 876, -867, 875, -868, 875, -2613, 873, -2613, 872, -869, 873, -2614, 847, -2640, 852, -889, 848, -894, 3136, -3840, 845, -895, 847, -896, 854, -2634, 843, -924, 629, -1114, 601, -1142, 491, -1252, 462, -1282, 326, -1417, 356, -1387, 301, -3187, 352, -1415, 245, -1499, 200]
carrier_frequency: 38kHz
switch:
- platform: template
id: sound_bar_power
name: Sound Bar Power
icon: "mdi:power"
turn_on_action:
- remote_transmitter.transmit_raw:
code: [9189, -4346, 727, -1546, 709, -1539, 712, -1535, 707, -1540, 707, -1541, 708, -416, 719, -1541, 708, -1540, 707, -416, 720, -1541, 704, -1544, 705, -418, 718, -416, 722, -1543, 706, -415, 721, -1542, 706, -415, 721, -1541, 706, -416, 721, -415, 724, -1539, 707, -418, 720, -415, 724, -416, 723, -1531, 713, -414, 722, -1533, 718, -1528, 720, -412, 722, -1529, 719, -1528, 720, -1527, 721]
carrier_frequency: 38kHz
- switch.template.publish:
id: sound_bar_power
state: ON
turn_off_action:
- remote_transmitter.transmit_raw:
code: [9189, -4346, 727, -1546, 709, -1539, 712, -1535, 707, -1540, 707, -1541, 708, -416, 719, -1541, 708, -1540, 707, -416, 720, -1541, 704, -1544, 705, -418, 718, -416, 722, -1543, 706, -415, 721, -1542, 706, -415, 721, -1541, 706, -416, 721, -415, 724, -1539, 707, -418, 720, -415, 724, -416, 723, -1531, 713, -414, 722, -1533, 718, -1528, 720, -412, 722, -1529, 719, -1528, 720, -1527, 721]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
carrier_frequency: 38kHz
code: [9143, -2145, 687]
repeat:
times: 5
wait_time: 240ms
- switch.template.publish:
id: sound_bar_power
state: OFF
- platform: template
id: soniq_power
name: TV Power
icon: "mdi:power"
turn_on_action:
- remote_transmitter.transmit_raw:
code: [9098, -4473, 716, -455, 692, -1593, 698, -459, 700, -457, 694, -1592, 699, -1589, 700, -1591, 690, -466, 700, -1560, 688, -483, 690, -1575, 699, -1592, 690, -1599, 693, -482, 703, -1569, 691, -1594, 692, -487, 690, -1579, 684, -1599, 693, -1595, 699, -480, 691, -463, 697, -463, 692, -460, 693, -1576, 695, -481, 679, -476, 690, -468, 695, -1574, 678, -1604, 689, -1597, 686, -1603, 684]
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 5ms
- switch.template.publish:
id: soniq_power
state: ON
turn_off_action:
- remote_transmitter.transmit_raw:
code: [9098, -4473, 716, -455, 692, -1593, 698, -459, 700, -457, 694, -1592, 699, -1589, 700, -1591, 690, -466, 700, -1560, 688, -483, 690, -1575, 699, -1592, 690, -1599, 693, -482, 703, -1569, 691, -1594, 692, -487, 690, -1579, 684, -1599, 693, -1595, 699, -480, 691, -463, 697, -463, 692, -460, 693, -1576, 695, -481, 679, -476, 690, -468, 695, -1574, 678, -1604, 689, -1597, 686, -1603, 684]
carrier_frequency: 38kHz
repeat:
times: 2
wait_time: 5ms
- switch.template.publish:
id: soniq_power
state: OFF
- platform: template
id: ac_power
name: AC Power
icon: "mdi:power"
turn_on_action:
- remote_transmitter.transmit_raw:
code: [3613, -3358, 1000, -2486, 997, -2489, 1000, -767, 976, -2486, 1003, -760, 985, -2480, 995, -768, 982, -760, 977, -2493, 991, -2490, 996, -767, 976, -2490, 995, -763, 980, -2491, 995, -764, 981, -762, 983, -760, 983, -760, 986, -2484, 991, -767, 982, -760, 979, -768, 978, -761, 975, -767, 983, -760, 988, -755, 978, -2493, 992, -765, 974, -769, 982, -761, 980, -762, 980, -766, 3589, -3366, 992, -2493, 992, -2497, 995, -761, 975, -2498, 990, -765, 974, -2500, 982, -763, 983, -760, 982, -2502, 983, -2503, 983, -761, 981, -2511, 974, -762, 976, -2512, 974, -767, 974, -769, 974, -769, 969, -774, 968, -2520, 961, -779, 963, -780, 962, -784, 962, -781, 957, -786, 960, -783, 952, -791, 951, -2537, 948, -797, 942, -801, 941, -806, 937, -806, 929, -814, 3539, -3439, 918]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3526, -3445, 911, -829, 913, -830, 913, -2575, 899, -842, 901, -842, 900, -843, 901, -842, 901, -843, 902, -841, 901, -842, 901, -2587, 899, -842, 901, -842, 900, -843, 903, -840, 901, -842, 903, -840, 902, -2586, 899, -2587, 901, -841, 901, -2587, 900, -2586, 897, -849, 897, -846, 890, -854, 894, -2593, 888, -2598, 892, -854, 884, -2609, 877, -2614, 872, -868, 875, -868, 3489, -3486, 874, -867, 877, -866, 874, -2614, 871, -869, 874, -869, 877, -866, 873, -870, 866, -878, 873, -870, 850, -893, 852, -2637, 842, -909, 802, -941, 797, -947, 771, -972, 776, -967, 776, -977, 743, -2750, 742, -2745, 729, -1011, 715, -2773, 709, -2777, 707]
carrier_frequency: 38kHz
- switch.template.publish:
id: ac_power
state: ON
turn_off_action:
- remote_transmitter.transmit_raw:
code: [3613, -3358, 1000, -2486, 997, -2489, 1000, -767, 976, -2486, 1003, -760, 985, -2480, 995, -768, 982, -760, 977, -2493, 991, -2490, 996, -767, 976, -2490, 995, -763, 980, -2491, 995, -764, 981, -762, 983, -760, 983, -760, 986, -2484, 991, -767, 982, -760, 979, -768, 978, -761, 975, -767, 983, -760, 988, -755, 978, -2493, 992, -765, 974, -769, 982, -761, 980, -762, 980, -766, 3589, -3366, 992, -2493, 992, -2497, 995, -761, 975, -2498, 990, -765, 974, -2500, 982, -763, 983, -760, 982, -2502, 983, -2503, 983, -761, 981, -2511, 974, -762, 976, -2512, 974, -767, 974, -769, 974, -769, 969, -774, 968, -2520, 961, -779, 963, -780, 962, -784, 962, -781, 957, -786, 960, -783, 952, -791, 951, -2537, 948, -797, 942, -801, 941, -806, 937, -806, 929, -814, 3539, -3439, 918]
carrier_frequency: 38kHz
- remote_transmitter.transmit_raw:
code: [3526, -3445, 911, -829, 913, -830, 913, -2575, 899, -842, 901, -842, 900, -843, 901, -842, 901, -843, 902, -841, 901, -842, 901, -2587, 899, -842, 901, -842, 900, -843, 903, -840, 901, -842, 903, -840, 902, -2586, 899, -2587, 901, -841, 901, -2587, 900, -2586, 897, -849, 897, -846, 890, -854, 894, -2593, 888, -2598, 892, -854, 884, -2609, 877, -2614, 872, -868, 875, -868, 3489, -3486, 874, -867, 877, -866, 874, -2614, 871, -869, 874, -869, 877, -866, 873, -870, 866, -878, 873, -870, 850, -893, 852, -2637, 842, -909, 802, -941, 797, -947, 771, -972, 776, -967, 776, -977, 743, -2750, 742, -2745, 729, -1011, 715, -2773, 709, -2777, 707]
carrier_frequency: 38kHz
- switch.template.publish:
id: ac_power
state: OFF
+75
View File
@@ -0,0 +1,75 @@
esphome:
name: esphome-waynes-room
friendly_name: ESPhome Wayne's Room
esp32:
board: esp32-s3-devkitc-1
framework:
type: arduino
version: 2.0.6
# Enable logging
logger:
# Enable Home Assistant API
api:
encryption:
key: "bZd2q2XkmQH/o/+Jz+gZKMFM8VGA0NRheWp/uYvQRho="
ota:
password: !secret ota_password
wifi:
networks:
- ssid: !secret ssid_garage
password: !secret wifi_password
- ssid: !secret ssid_house
password: !secret wifi_password
domain: .alm.lan
# Enable fallback hotspot (captive portal) in case wifi connection fails
ap:
ssid: "esphome-waynes-room"
password: "lHNYq8KWKSJv"
captive_portal:
time:
- platform: homeassistant
id: homeassistant_time
timezone: Australia/Brisbane
i2c:
sda: 17
scl: 18
scan: true
id: bus_a
binary_sensor:
- platform: status
name: "Availibility"
- platform: gpio
pin:
number: 8
mode:
input: true
pullup: true
name: "Motion Detection"
sensor:
- platform: wifi_signal
name: "WiFi Signal Strength"
update_interval: 60s
- platform: uptime
name: Uptime
- platform: bh1750
name: "Light Level"
address: 0x23
update_interval: 5s
- platform: internal_temperature
name: "Internal Temperature"
button:
- platform: restart
name: "Reset"
+25
View File
@@ -0,0 +1,25 @@
wifi:
networks:
- ssid: !secret ssid_garage
password: !secret wifi_password
- ssid: !secret ssid_house
password: !secret wifi_password
domain: .alm.lan
time:
- platform: homeassistant
id: homeassistant_time
timezone: Australia/Brisbane
binary_sensor:
- platform: status
name: "Availibility"
sensor:
- platform: wifi_signal
name: "WiFi Signal Strength"
update_interval: 60s
- platform: uptime
name: Uptime
- platform: internal_temperature
name: "Internal Temperature"
button:
- platform: restart
name: "Reset"
+21
View File
@@ -0,0 +1,21 @@
version: "3"
services:
server:
hostname: esphome.alm.lan
# build:
# context: .
# dockerfile: Dockerfile
# image: beatzaplenty/esphome
image: ghcr.io/esphome/esphome
restart: unless-stopped
volumes:
- ./data:/config
- /etc/localtime:/etc/localtime:ro
# - /dev/ttyACM0:/dev/ttyACM0
- /dev/ttyACM1:/dev/ttyS0
network_mode: host
privileged: true
labels:
- "io.portainer.accesscontrol.public"
+48
View File
@@ -0,0 +1,48 @@
Soundbar:
Mute:
press: 9165, -4370, 709, -1563, 698, -1549, 700, -1547, 701, -1546, 700, -1547, 697, -435, 705, -1546, 697, -1550, 695, -439, 703, -1547, 697, -1550, 701, -431, 700, -438, 701, -1551, 698, -431, 705, -1550, 696, -434, 706, -537, 705, -1442, 699, -1442, 697, -544, 704, -1546, 698, -1443, 700, -430, 709, -1543, 702, -1441, 701, -537, 709, -532, 707, -1435, 708, -430, 704, -534, 709, -1539, 709
release: 9167,-2118,729
Volume:
up: 9149, -4385, 687, -1581, 670, -1577, 670, -1577, 668, -1579, 670, -1577, 672, -455, 680, -1577, 670, -1578, 669, -460, 680, -1576, 669, -1578, 670, -462, 675, -460, 676, -1579, 668, -463, 674, -1579, 670, -462, 675, -1577, 669, -460, 677, -462, 674, -1579, 668, -1579, 668, -465, 672, -464, 672, -1578, 670, -464, 672, -1578, 670, -1577, 667, -467, 670, -467, 670, -1579, 668, -1579, 669
down: 9151, -4389, 685, -1582, 668, -1579, 667, -1580, 667, -1580, 668, -1580, 667, -466, 669, -1582, 667, -1581, 667, -467, 668, -1583, 667, -1580, 667, -467, 669, -468, 670, -1581, 668, -466, 669, -1581, 670, -1577, 669, -464, 670, -468, 668, -468, 669, -1582, 667, -1580, 668, -466, 669, -467, 671, -466, 670, -1580, 668, -1579, 668, -1580, 669, -466, 669, -468, 669, -1580, 668, -1580, 667
power:
press: 9189, -4346, 727, -1546, 709, -1539, 712, -1535, 707, -1540, 707, -1541, 708, -416, 719, -1541, 708, -1540, 707, -416, 720, -1541, 704, -1544, 705, -418, 718, -416, 722, -1543, 706, -415, 721, -1542, 706, -415, 721, -1541, 706, -416, 721, -415, 724, -1539, 707, -418, 720, -415, 724, -416, 723, -1531, 713, -414, 722, -1533, 718, -1528, 720, -412, 722, -1529, 719, -1528, 720, -1527, 721
release: 9143, -2145, 687
tv:
power: 9098, -4473, 716, -455, 692, -1593, 698, -459, 700, -457, 694, -1592, 699, -1589, 700, -1591, 690, -466, 700, -1560, 688, -483, 690, -1575, 699, -1592, 690, -1599, 693, -482, 703, -1569, 691, -1594, 692, -487, 690, -1579, 684, -1599, 693, -1595, 699, -480, 691, -463, 697, -463, 692, -460, 693, -1576, 695, -481, 679, -476, 690, -468, 695, -1574, 678, -1604, 689, -1597, 686, -1603, 684
greenbutton:
ok:
arrow-up:
arrow-down:
arrow-left:
arrow-right:
source:
ac:
power:
press:
release:
mode:
heat:
press: 3625, -3345, 1011, -2474, 1012, -789, 954, -762, 981, -2472, 1013, -2475, 1011, -2474, 1012, -2474, 1011, -2501, 1012, -2448, 1010, -763, 980, -762, 982, -2473, 1012, -2475, 1011, -2501, 1012, -2447, 1011, -2474, 1012, -761, 981, -761, 982, -2475, 1011, -2475, 1011, -760, 983, -760, 983, -759, 1013, -731, 984, -759, 983, -760, 985, -2472, 1012, -2473, 1013, -759, 1009, -734, 981, -761, 983, -761, 3597, -3346, 1011, -2475, 1010, -759, 960, -784, 959, -2498, 987, -2500, 985, -2501, 989, -2496, 1009, -2478, 1008, -2476, 1010, -758, 984, -758, 984, -2478, 1008, -2478, 1007, -2478, 1008, -2478, 1007, -2507, 979, -733, 1011, -732, 1013, -2475, 1012, -2474, 1011, -730, 1012, -730, 1012, -732, 1010, -733, 1008, -734, 1008, -735, 1008, -2481, 1003, -2483, 1001, -740, 1001, -742, 1001, -742, 997, -747, 3606, -3393, 939
release: 3547, -3424, 931, -809, 932, -811, 904, -2586, 898, -842, 901, -843, 900, -842, 901, -842, 907, -836, 901, -842, 902, -842, 929, -2559, 899, -842, 902, -841, 901, -842, 901, -869, 873, -843, 900, -843, 901, -2588, 924, -2562, 897, -843, 900, -2613, 873, -2612, 873, -868, 875, -868, 875, -868, 875, -2613, 873, -2614, 873, -867, 875, -2641, 845, -2613, 873, -871, 871, -870, 3488, -3486, 871, -869, 877, -866, 902, -2587, 871, -897, 847, -869, 901, -867, 848, -895, 848, -895, 848, -895, 848, -895, 847, -2642, 843, -897, 846, -898, 830, -913, 819, -924, 820, -923, 819, -925, 819, -2695, 789, -2697, 789, -952, 791, -2724, 761, -2724, 761, -1007, 736, -1006, 246
fan:
auto:
low:
press: 3603, -3367, 990, -2496, 989, -783, 961, -782, 959, -2497, 990, -782, 960, -2497, 989, -782, 960, -783, 959, -2498, 988, -782, 961, -781, 962, -2498, 988, -782, 985, -2474, 993, -774, 985, -759, 984, -758, 960, -783, 984, -2477, 1011, -2475, 1009, -757, 984, -735, 1010, -732, 1009, -733, 1011, -733, 1009, -733, 1011, -2478, 1008, -2477, 1007, -733, 1011, -733, 1007, -735, 1006, -737, 3619, -3356, 999, -2486, 999, -742, 1002, -741, 999, -2489, 996, -744, 998, -2491, 993, -747, 994, -749, 969, -2520, 964, -777, 967, -777, 964, -2524, 961, -804, 938, -2550, 935, -805, 937, -806, 936, -808, 933, -809, 934, -2556, 928, -2557, 903, -839, 901, -842, 900, -842, 902, -841, 902, -841, 902, -842, 901, -2587, 899, -2586, 900, -840, 902, -841, 901, -843, 901, -842, 3515, -3460, 897
release: 3509, -3461, 897, -844, 898, -845, 900, -2612, 873, -868, 876, -867, 875, -870, 873, -867, 876, -868, 876, -867, 875, -868, 874, -2614, 872, -869, 875, -868, 875, -868, 874, -869, 874, -869, 879, -864, 875, -2613, 872, -2614, 872, -869, 874, -2614, 872, -2614, 872, -869, 874, -869, 874, -869, 879, -2634, 845, -2642, 844, -896, 847, -2642, 844, -2642, 817, -923, 820, -923, 3435, -3567, 791, -949, 792, -952, 791, -2697, 788, -979, 764, -980, 763, -980, 761, -1009, 274, -11, 177
med:
press: 3599, -3345, 1039, -2444, 1043, -730, 984, -786, 958, -2471, 1013, -786, 984, -731, 984, -2502, 984, -787, 984, -2472, 986, -758, 1013, -731, 983, -2473, 1040, -732, 1011, -731, 989, -2470, 1011, -786, 956, -761, 982, -787, 983, -2448, 1038, -2447, 1012, -786, 932, -811, 983, -760, 983, -733, 959, -783, 1010, -733, 987, -2499, 986, -2473, 986, -810, 933, -783, 960, -783, 959, -784, 3602, -3343, 987, -2500, 1012, -783, 957, -758, 1011, -2476, 988, -780, 961, -754, 987, -2475, 1009, -758, 990, -2472, 1009, -757, 1013, -756, 960, -2476, 1009, -761, 1009, -733, 1010, -2450, 1008, -732, 1012, -731, 1013, -757, 986, -2475, 1011, -2475, 1038, -729, 985, -731, 1009, -761, 1008, -708, 1005, -739, 1030, -739, 977, -2512, 971, -2515, 967, -747, 1023, -720, 1021, -751, 963, -803, 3527, -3421, 962
release: 3544, -3428, 927, -812, 929, -815, 901, -2587, 926, -842, 874, -841, 901, -870, 873, -843, 928, -815, 902, -868, 874, -869, 902, -2587, 898, -814, 929, -842, 874, -869, 901, -842, 901, -842, 874, -842, 901, -2615, 872, -2586, 899, -870, 873, -2639, 874, -2585, 901, -866, 876, -867, 876, -867, 876, -2586, 872, -2614, 872, -895, 848, -2640, 873, -2613, 874, -840, 879, -892, 3462, -3485, 898, -842, 875, -895, 874, -2588, 871, -870, 872, -896, 848, -895, 874, -896, 820, -896, 846, -897, 847, -924, 819, -2642, 818, -950, 792, -952, 791, -924, 819, -950, 821, -949, 766, -978, 765, -2723, 790, -2695, 790, -951, 791, -2715, 749
high:
press: 3654, -3316, 1040, -2473, 989, -756, 984, -786, 956, -2473, 989, -783, 983, -2474, 1015, -2471, 1009, -761, 984, -2501, 983, -788, 956, -760, 1009, -2449, 1037, -760, 984, -2447, 1039, -2474, 987, -783, 956, -787, 957, -786, 955, -2503, 1011, -2448, 1010, -760, 1010, -759, 983, -733, 958, -785, 1011, -759, 956, -760, 1009, -2477, 985, -2474, 1011, -759, 959, -784, 1010, -706, 1009, -736, 3620, -3350, 1007, -2478, 984, -784, 1012, -704, 1012, -2503, 980, -733, 1010, -2506, 977, -2509, 1008, -731, 1009, -2452, 1008, -761, 1009, -706, 1032, -2484, 1004, -736, 977, -2485, 1000, -2513, 970, -742, 1002, -741, 1026, -745, 972, -2489, 1022, -2463, 994, -774, 996, -747, 969, -774, 967, -749, 995, -748, 995, -748, 996, -2520, 964, -2495, 991, -750, 963, -779, 964, -808, 961, -805, 3551, -3424, 905
release: 3512, -3458, 872, -842, 901, -842, 901, -2587, 927, -841, 879, -839, 899, -869, 902, -841, 875, -841, 929, -840, 903, -813, 903, -2586, 900, -867, 875, -869, 902, -813, 903, -841, 902, -841, 927, -843, 901, -2587, 872, -2586, 927, -814, 901, -2615, 899, -2586, 899, -815, 902, -869, 874, -868, 901, -2560, 926, -2561, 897, -867, 877, -2641, 871, -2585, 873, -895, 876, -840, 3492, -3510, 873, -867, 875, -842, 874, -2614, 872, -895, 847, -896, 847, -869, 902, -841, 874, -869, 901, -842, 901, -870, 846, -2642, 843, -871, 874, -869, 874, -869, 874, -922, 793, -950, 821, -894, 848, -2641, 818, -2667, 845, -924, 819, -2642, 844, -2641, 817, -953, 789, -952, 818, -924, 585, -2905, 377, -3136, 287, -1454, 196
cool:
press:
release:
dry:
press:
release:
auto:
press:
release:
+81
View File
@@ -0,0 +1,81 @@
version: '3'
services:
# MongoDB: https://hub.docker.com/_/mongo/
mongodb:
image: "mongo:6.0.14"
volumes:
- "./data/mongodb:/data/db"
restart: "on-failure"
networks:
- graylog
opensearch:
image: "opensearchproject/opensearch:2.12.0"
environment:
- "OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g"
- "bootstrap.memory_lock=true"
- "discovery.type=single-node"
- "action.auto_create_index=false"
- "plugins.security.ssl.http.enabled=false"
- "plugins.security.disabled=true"
# Can generate a password for `OPENSEARCH_INITIAL_ADMIN_PASSWORD` using a linux device via:
# tr -dc A-Z-a-z-0-9_@#%^-_=+ < /dev/urandom | head -c${1:-32}
- OPENSEARCH_INITIAL_ADMIN_PASSWORD=am+6RBr@bdM2+Hzqguv_9snotOfVvPO6
ulimits:
memlock:
hard: -1
soft: -1
nofile:
soft: 65536
hard: 65536
restart: "on-failure"
networks:
- graylog
# Graylog: https://hub.docker.com/r/graylog/graylog/
graylog:
hostname: "server"
image: "graylog/graylog:6.0.0"
# To install Graylog Open: "graylog/graylog:6.0.0"
depends_on:
- mongodb
- opensearch
entrypoint: "/usr/bin/tini -- wait-for-it opensearch:9200 -- /docker-entrypoint.sh"
environment:
# - GRAYLOG_NODE_ID_FILE= "/usr/share/graylog/data/config/node-id"
- GRAYLOG_HTTP_BIND_ADDRESS= 192.168.2.252:9000
- GRAYLOG_ELASTICSEARCH_HOSTS= http://opensearch:9200
- GRAYLOG_MONGODB_URI= mongodb://graylog_mongodb_1:27017/graylog
# To make reporting (headless_shell) work inside a Docker container
- GRAYLOG_REPORT_DISABLE_SANDBOX= true
# CHANGE ME (must be at least 16 characters)!
- GRAYLOG_PASSWORD_SECRET= "somepasswordpepper"
# Password: "admin"
- GRAYLOG_ROOT_PASSWORD_SHA2= "8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918"
- GRAYLOG_HTTP_EXTERNAL_URI= http://192.168.2.252:9000/
ports:
# Graylog web interface and REST API
- "9000:9000/tcp"
# Beats
- "5044:5044/tcp"
# Syslog TCP
- "5140:5140/tcp"
# Syslog UDP
- "5140:5140/udp"
# GELF TCP
- "12201:12201/tcp"
# GELF UDP
- "12201:12201/udp"
# Forwarder data
- "13301:13301/tcp"
# Forwarder config
- "13302:13302/tcp"
volumes:
- "./data/graylog:/usr/share/graylog/data/data"
- "./data/journal:/usr/share/graylog/data/journal"
restart: "on-failure"
networks:
graylog:
driver: "bridge"
+29
View File
@@ -0,0 +1,29 @@
version: "3"
services:
server:
image: "ghcr.io/home-assistant/home-assistant:stable"
# user: "${UID}:${GID}"
hostname: smarthome.alm.lan
volumes:
- ./hass-data:/config
- /etc/localtime:/etc/localtime:ro
- /run/dbus:/run/dbus:ro
restart: always
environment:
- TZ="Australia/Brisbane"
# - PUID="${UID}"
# - PGID="${GID}"
labels:
- "io.portainer.accesscontrol.public"
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1:8123"] # 192.168.1.244 is my HA ip
interval: 30s
timeout: 10s
retries: 6
privileged: true
cap_add:
- NET_ADMIN
- NET_BIND_SERVICE
- SYS_ADMIN
network_mode: host
+4
View File
@@ -0,0 +1,4 @@
FROM debian
COPY cross-toolchain.sh /
RUN chmod +x cross-toolchain.sh
RUN . /cross-toolchain.sh
+49
View File
@@ -0,0 +1,49 @@
#!/bin/bash
apt-get update
apt-get upgrade -y
apt-get install -y wget
export LFS=/mnt/lfs
wget https://mirror.dogado.de/LFS/lfs-packages/lfs-packages-11.3.tar
tar xf lfs-packages-11.3.tar
mv 11.3 sources
mv sources $LFS
groupadd lfs
useradd -s /bin/bash -g lfs -m -k /dev/null lfs
passwd lfs
chown -v lfs $LFS/{usr{,/*},lib,var,etc,bin,sbin,tools}
case $(uname -m) in
x86_64) chown -v lfs $LFS/lib64 ;;
esac
su - lfs
cat > ~/.bash_profile << "EOF"
exec env -i HOME=$HOME TERM=$TERM PS1='\u:\w\$ ' /bin/bash
EOF
cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/usr/bin
if [ ! -L /bin ]; then PATH=/bin:$PATH; fi
PATH=$LFS/tools/bin:$PATH
CONFIG_SITE=$LFS/usr/share/config.site
export LFS LC_ALL LFS_TGT PATH CONFIG_SITE
EOF
source ~/.bash_profile
cd $LFS/sources
tar xf binutils-2.40.tar.xz
pushd binutils-2.40
mkdir -v build
cd build
../configure --prefix=$LFS/tools \
--with-sysroot=$LFS \
--target=$LFS_TGT \
--disable-nls \
--enable-gprofng=no \
--disable-werror
make
make install
popd
+7
View File
@@ -0,0 +1,7 @@
FROM debian
RUN apt-get update && apt-get install -y python3 pip
RUN pip install sendgrid docker
CMD ["bash"]
+20
View File
@@ -0,0 +1,20 @@
FROM debian
ENV DEBIAN_FRONTEND=noninteractive
ENV WINEARCH=win32
ENV WINEPREFIX=~/.msoffice
RUN dpkg --add-architecture i386 && \
apt-get update && \
apt-get install -y wget gcc make perl && \
apt install -y software-properties-common && \
mkdir -pm755 /etc/apt/keyrings && \
wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key && \
wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bullseye/winehq-bullseye.sources && \
apt-get update && \
apt-get install -y --install-recommends winehq-stable && \
apt-get update && \
apt-get install -y winetricks winbind samba smbclient winetricks
RUN mkdir ~/.msoffice
RUN wineboot -i
RUN winetricks cmd corefonts msxml6 riched20 gdiplus
COPY /root/Nextcloud/OfficeSetup.exe /
RUN wine /OfficeSetup.exe
+21
View File
@@ -0,0 +1,21 @@
version: "3.9"
services:
haproxy:
deploy:
mode: global
restart: always
image: haproxytech/haproxy-debian
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- data:/etc/haproxy:rw
ports:
- 80:80
- 443:443
volumes:
data:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/haproxy"
o: "addr=192.168.8.231,rw,nfsvers=4,async"
+14
View File
@@ -0,0 +1,14 @@
version: "3.9"
services:
keeweb:
deploy:
replicas: 3
restart: always
image: antelle/keeweb:latest
command: nginx
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
ports:
- 8888:80
- 8443:443
@@ -0,0 +1,20 @@
version: "3.9"
services:
registry:
restart: always
deploy:
replicas: 3
image: registry:2
volumes:
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etclocaltime:ro
- data:/var/lib/registry:rw
ports:
- 5002:5000
volumes:
data:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/registry"
o: "addr=192.168.8.231,rw,nfsvers=4,async"
+12
View File
@@ -0,0 +1,12 @@
version: "3.9"
services:
searxng:
deploy:
replicas: 3
restart: always
image: searxng/searxng
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
ports:
- 8080:8080
+21
View File
@@ -0,0 +1,21 @@
version: "3.9"
services:
webdav:
deploy:
replicas: 3
restart: always
image: registry.alm.lan/webdav:latest
volumes:
- data:/var/www/html
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
ports:
- 5003:5003
- 5004:5004
volumes:
data:
driver: local
driver_opts:
type: nfs
device: ":/srv/docker/volumes/webdav"
o: "addr=192.168.8.231,rw,nfsvers=4,async"
+40
View File
@@ -0,0 +1,40 @@
version: "3"
services:
webapp:
image: portainer/portainer-ce:latest
command: -H unix:///var/run/docker.sock
restart: always
hostname: portainer.lan.ddnsgeek.com
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/data
labels:
# Frontend
- "traefik.enable=true"
- "traefik.http.routers.frontend.rule=Host(`portainer.lan.ddnsgeek.com`)"
- "traefik.http.routers.frontend.entrypoints=websecure"
- "traefik.http.services.frontend.loadbalancer.server.port=9000"
- "traefik.http.routers.frontend.service=frontend"
- "traefik.http.routers.frontend.tls.certresolver=myresolver"
- "traefik.http.routers.frontend.middlewares=error-pages-middleware"
# Edge
- "traefik.http.routers.edge.rule=Host(`edge.lan.ddnsgeek.com`)"
- "traefik.http.routers.edge.entrypoints=websecure"
- "traefik.http.services.edge.loadbalancer.server.port=8000"
- "traefik.http.routers.edge.service=edge"
- "traefik.http.routers.edge.tls.certresolver=myresolver"
- "io.portainer.accesscontrol.public"
# healthcheck:
# test: "curl http://localhost:9000/api/system/status"
networks:
- traefik_default
networks:
traefik_default:
external: true
+6
View File
@@ -0,0 +1,6 @@
FROM ubuntu:latest
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y flatpak && apt-get upgrade -y
RUN flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
RUN flatpak install app/org.mozilla.firefox/x86_64/stable -y --noninteractive
CMD ["/usr/bin/firefox"]
+12
View File
@@ -0,0 +1,12 @@
version: "3"
services:
app:
image: ubuntu-gui
build: .
environment:
- DISPLAY=${DISPLAY}
volumes:
- /tmp/.X11-unix:/tmp/.X11-unix
network_mode: host
hostname: ubuntu
+9
View File
@@ -0,0 +1,9 @@
doods:
detectors:
- name: default
type: tflite
modelFile: models/coco_ssd_mobilenet_v1_1.0_quant.tflite
labelFile: models/coco_labels0.txt
numThreads: 4
numConcurrent: 4
hwAccel: false
+30
View File
@@ -0,0 +1,30 @@
version: "3"
services:
server:
image: "eclipse-mosquitto"
# user: "${UID}:${GID}"
hostname: mqtt.alm.lan
volumes:
- ./config:/mosquitto/config
- /etc/localtime:/etc/localtime:ro
- ./data:/mosquitto/data
- ./log:/mosquitto/log
restart: always
environment:
- TZ="Australia/Brisbane"
# - PUID="${UID}"
# - PGID="${GID}"
labels:
- "io.portainer.accesscontrol.public"
# healthcheck:
# test: ["CMD", "curl", "-f", "http://127.0.0.1:8123"] # 192.168.1.244 is my HA ip
# interval: 30s
# timeout: 10s
# retries: 6
# privileged: true
# cap_add:
# - NET_ADMIN
# - NET_BIND_SERVICE
# - SYS_ADMIN
network_mode: host
+35
View File
@@ -0,0 +1,35 @@
version: "3"
services:
webapp:
image: netdata/netdata:latest
hostname: sysmon.lan.ddnsgeek.com
restart: always
cap_add:
- SYS_PTRACE
security_opt:
- apparmor:unconfined
networks:
- traefik_default
volumes:
- ./data/config:/etc/netdata
- ./data/lib:/var/lib/netdata
- ./data/cache:/var/cache/netdata
- /etc/passwd:/host/etc/passwd:ro
- /etc/group:/host/etc/group:ro
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /etc/os-release:/host/etc/os-release:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
labels:
- "traefik.enable=true"
- "traefik.http.routers.netdata.rule=Host(`sysmon.lan.ddnsgeek.com`)"
- "traefik.http.routers.netdata.entrypoints=websecure"
- "traefik.http.routers.netdata.tls=true"
- "traefik.http.routers.netdata.tls.certresolver=myresolver"
- "traefik.http.services.netdata.loadBalancer.server.port=19999"
- "traefik.http.routers.netdata.middlewares=auth, error-pages-middleware"
- "traefik.http.middlewares.auth.basicauth.users=beatzaplenty:$$apr1$$rQ8iCgI4$$Y/u2AttE3tb1sIQwrIGU0."
- "io.portainer.accesscontrol.public"
networks:
traefik_default:
external: true
+42
View File
@@ -0,0 +1,42 @@
version: "3"
services:
webapp:
image: traccar/traccar
restart: never
# read_only: true
# tmpfs:
# - /tmp
# - /var
# - /run
hostname: traccar.lan.ddnsgeek.com
# networks:
# - traefik_default
deploy:
# resources:
# limits:
# cpus: '0.05'
# memory: 100m
restart_policy:
condition: on-failure
max_attempts: 5
# labels:
# - "traefik.http.routers.traccar.rule=Host(`traccar.lan.ddnsgeek.com`)"
# - "traefik.enable=true"
# - "traefik.http.routers.traccar.entrypoints=websecure"
# - "traefik.http.routers.traccar.tls.certresolver=myresolver"
# - "io.portainer.accesscontrol.public"
# - "traefik.http.routers.traccar.middlewares=error-pages-middleware"
# - "traefik.http.services.traccar.loadbalancer.server.port=8888"
ports:
- 80:8082
- 5000-5150:5000-5150
- 5000-5150:5000-5150/udp
volumes:
- ./logs:/opt/traccar/logs:rw
- ./traccar.xml:/opt/traccar/conf/traccar.xml:ro
# healthcheck:
# test: "curl --fail http://localhost || exit 1"
#networks:
# traefik_default:
# external: true
+14
View File
@@ -0,0 +1,14 @@
version: '3'
services:
webdav:
image: bytemark/webdav
restart: always
ports:
- "80:80"
environment:
AUTH_TYPE: Digest
USERNAME: beatzaplenty
PASSWORD: R1m@dmin
volumes:
- ./data:/var/lib/dav/data