Add ESPHome

This commit is contained in:
2025-07-14 22:50:09 +01:00
parent 5d8e4b5e2c
commit 3ee1681134
2 changed files with 72 additions and 20 deletions

View File

@@ -1,5 +1,5 @@
# docker compose down --volumes # sudo docker compose down --volumes
# docker compose up -d --remove-orphans # sudo docker compose up -d --remove-orphans
name: server name: server
@@ -97,6 +97,19 @@ services:
ports: ports:
- "8123:8123" - "8123:8123"
esphome:
container_name: esphome
image: ghcr.io/esphome/esphome:latest
volumes:
- ${ESPHOME_CONFIG}:/config
- /etc/localtime:/etc/localtime:ro
restart: unless-stopped
privileged: true
ports:
- "6052:6052"
env_file:
- .env
# openwakeword: # openwakeword:
# image: homeassistant/amd64-addon-openwakeword:latest # image: homeassistant/amd64-addon-openwakeword:latest
# container_name: openwakeword # container_name: openwakeword
@@ -160,24 +173,24 @@ services:
restart: unless-stopped restart: unless-stopped
# --- Pi-hole --- # --- Pi-hole ---
pihole: # pihole:
container_name: pihole # container_name: pihole
image: pihole/pihole:latest # image: pihole/pihole:latest
ports: # ports:
# DNS Ports # # DNS Ports
- "53:53/tcp" # - "53:53/tcp"
- "53:53/udp" # - "53:53/udp"
# Default HTTP Port # # Default HTTP Port
- "2100:80/tcp" # - "2100:80/tcp"
- "2101:443/tcp" # - "2101:443/tcp"
env_file: # env_file:
- .env # - .env
volumes: # volumes:
- "${PIHOLE}:/etc/pihole" # - "${PIHOLE}:/etc/pihole"
cap_add: # cap_add:
# Optional, if Pi-hole should get some more processing time # # Optional, if Pi-hole should get some more processing time
- SYS_NICE # - SYS_NICE
restart: unless-stopped # restart: unless-stopped
# --- Nextcloud --- # --- Nextcloud ---
nextcloud-aio-mastercontainer: nextcloud-aio-mastercontainer:

39
server/install-docker.sh Normal file
View File

@@ -0,0 +1,39 @@
#!/bin/sh
set -e
if ! command -v curl >/dev/null 2>&1; then
echo "curl is required. Installing curl..."
sudo apt update
sudo apt install -y curl
fi
echo "Updating package index..."
sudo apt update
echo "Installing required packages..."
sudo apt install -y ca-certificates curl gnupg lsb-release
echo "Adding Docker's official GPG key..."
sudo mkdir -p /etc/apt/keyrings
curl -fsSL "https://download.docker.com/linux/$(
. /etc/os-release
echo "$ID"
)/gpg" | sudo gpg --dearmor >/tmp/docker.gpg
sudo mv /tmp/docker.gpg /etc/apt/keyrings/docker.gpg
sudo chmod 644 /etc/apt/keyrings/docker.gpg
echo "Setting up the Docker repository..."
ARCH=$(dpkg --print-architecture)
OS_ID=$(awk -F= '/^ID=/{gsub(/\"/, "", $2); print $2}' /etc/os-release)
RELEASE=$(lsb_release -cs)
echo "deb [arch=$ARCH signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/$OS_ID $RELEASE stable" |
sudo tee /etc/apt/sources.list.d/docker.list >/dev/null
echo "Updating package index (with Docker repo)..."
sudo apt update
echo "Installing Docker Engine..."
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
echo "Docker installation complete!"
docker --version