Compare commits
No commits in common. "069e21adbdffd0e46cd5b27e0afcbcf9f9f92cab" and "6c0a690e86c265442ca5d195687e20e200b9478c" have entirely different histories.
069e21adbd
...
6c0a690e86
3 changed files with 0 additions and 102 deletions
|
@ -1,5 +0,0 @@
|
||||||
# Homeassistant Version (Standard: latest)
|
|
||||||
HOMEASSISTANT_VERSION=latest
|
|
||||||
|
|
||||||
# Homeassistant Domain
|
|
||||||
HOMEASSISTANT_DOMAIN=homeassistant.example.com
|
|
|
@ -1,62 +0,0 @@
|
||||||
# Home Assistant Docker Setup with Traefik
|
|
||||||
|
|
||||||
This guide provides instructions for deploying Home Assistant using Docker and Traefik as a reverse proxy. The setup includes securing the Home Assistant instance with HTTPS and configuring a trusted proxy.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
- Docker and Docker Compose installed on your system
|
|
||||||
- Traefik configured as your reverse proxy
|
|
||||||
- A domain name pointing to your Home Assistant instance
|
|
||||||
|
|
||||||
## Environment Variables
|
|
||||||
Before deploying the container, create a `.env` file from the provided `.env-example` file and adjust the values as needed.
|
|
||||||
|
|
||||||
```sh
|
|
||||||
cp .env-example .env
|
|
||||||
nano .env
|
|
||||||
```
|
|
||||||
|
|
||||||
### `.env-example` file
|
|
||||||
```ini
|
|
||||||
# Home Assistant Version (Default: latest)
|
|
||||||
HOMEASSISTANT_VERSION=latest
|
|
||||||
|
|
||||||
# Home Assistant Domain
|
|
||||||
HOMEASSISTANT_DOMAIN=homeassistant.example.com
|
|
||||||
```
|
|
||||||
|
|
||||||
## Starting the Container
|
|
||||||
Once the `.env` file is configured, start the Home Assistant container using:
|
|
||||||
```sh
|
|
||||||
docker-compose up -d
|
|
||||||
```
|
|
||||||
|
|
||||||
## Configuring the Reverse Proxy
|
|
||||||
To enable proper proxy support in Home Assistant, update `data/config/configuration.yaml` with the following settings:
|
|
||||||
|
|
||||||
### Finding the Local Subnet IP
|
|
||||||
To determine the Docker subnet used by Home Assistant, run:
|
|
||||||
```sh
|
|
||||||
docker inspect homeassistant | grep Gateway
|
|
||||||
```
|
|
||||||
|
|
||||||
### `configuration.yaml`
|
|
||||||
```yaml
|
|
||||||
http:
|
|
||||||
ip_ban_enabled: true
|
|
||||||
login_attempts_threshold: 5
|
|
||||||
use_x_forwarded_for: true
|
|
||||||
trusted_proxies:
|
|
||||||
- 10.0.0.0/24 # Local Subnet
|
|
||||||
- 172.18.0.0/24 # Your Docker Subnet
|
|
||||||
```
|
|
||||||
|
|
||||||
## Accessing Home Assistant
|
|
||||||
Once everything is set up, restart Home Assistant and it should be accessible via the configured domain:
|
|
||||||
```
|
|
||||||
https://homeassistant.example.com
|
|
||||||
```
|
|
||||||
|
|
||||||
If there are any issues, check the container logs with:
|
|
||||||
```sh
|
|
||||||
docker logs -f homeassistant
|
|
||||||
```
|
|
|
@ -1,35 +0,0 @@
|
||||||
---
|
|
||||||
services:
|
|
||||||
homeassistant:
|
|
||||||
container_name: homeassistant
|
|
||||||
image: "ghcr.io/home-assistant/home-assistant:${HOMEASSISTANT_VERSION:-latest}"
|
|
||||||
volumes:
|
|
||||||
- ./data/config:/config
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
- /run/dbus:/run/dbus:ro
|
|
||||||
restart: unless-stopped
|
|
||||||
privileged: true
|
|
||||||
networks:
|
|
||||||
- traefik
|
|
||||||
environment:
|
|
||||||
- TZ=Europe/Rome
|
|
||||||
cap_add:
|
|
||||||
- NET_ADMIN
|
|
||||||
- NET_BIND_SERVICE
|
|
||||||
- SYS_ADMIN
|
|
||||||
labels:
|
|
||||||
- "traefik.enable=true"
|
|
||||||
- "traefik.docker.network=traefik"
|
|
||||||
- "traefik.http.routers.homeassistant.entrypoints=http"
|
|
||||||
- "traefik.http.routers.homeassistant.rule=Host(`${HOMEASSISTANT_DOMAIN:?error}`)"
|
|
||||||
- "traefik.http.middlewares.homeassistant-https-redirect.redirectscheme.scheme=https"
|
|
||||||
- "traefik.http.routers.homeassistant.middlewares=homeassistant-https-redirect"
|
|
||||||
- "traefik.http.routers.homeassistant-secure.entrypoints=https"
|
|
||||||
- "traefik.http.routers.homeassistant-secure.rule=Host(`${HOMEASSISTANT_DOMAIN:?error}`)"
|
|
||||||
- "traefik.http.routers.homeassistant-secure.tls=true"
|
|
||||||
- "traefik.http.routers.homeassistant-secure.service=homeassistant"
|
|
||||||
- "traefik.http.services.homeassistant.loadbalancer.server.port=8123"
|
|
||||||
|
|
||||||
networks:
|
|
||||||
traefik:
|
|
||||||
external: true
|
|
Loading…
Add table
Reference in a new issue