esphome

esphome

Docker app from imagegenius' Repository

Overview

ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.

imagegenius/esphome

GitHub Release GitHub Package Repository

ESPHome is a system to control your ESP8266/ESP32 by simple yet powerful configuration files and control them remotely through Home Automation systems.

esphome

Variants

Tag Description Platforms
latest Alpine + latest ESPHome app amd64, arm64

Pin a specific upstream ESPHome release with the version tag:

ghcr.io/imagegenius/esphome:2026.5.1

Requirements

  • Config volume: mount /config for ESPHome projects and generated build data.
  • Optional device access: pass USB serial devices through when flashing from the container.

Usage

Docker Compose

---
services:
  esphome:
    image: ghcr.io/imagegenius/esphome:latest
    container_name: esphome
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - ESPHOME_DASHBOARD_USE_PING=false #optional
    volumes:
      - path_to_appdata:/config
    ports:
      - 6052:6052
    restart: unless-stopped

Parameters

Parameter Function
-p 6052 WebUI port
-e PUID=1000 UID for permissions — see below
-e PGID=1000 GID for permissions — see below
-e TZ=Etc/UTC Timezone, see this list
-e ESPHOME_DASHBOARD_USE_PING=false Use ping instead of mDNS for device status
-v /config ESPHome config and build data

User / Group IDs & umask

Set PUID=1000 PGID=1000 to match volume ownership on the host (id user to find yours). Optionally UMASK=022 (works subtractively, not additively).

Updating

docker pull ghcr.io/imagegenius/esphome:latest
docker stop esphome && docker rm esphome
# recreate with the same docker run parameters
docker image prune  # optional: remove dangling images

Or with compose: docker compose pull && docker compose up -d.

Support

How this image is built

This repo is built with GitHub Actions, based on the workflow shape from home-operations/containers.

  • The container starts from linuxserver/docker-baseimage-alpine.
  • ESPHome is installed from the upstream PyPI release, with PlatformIO libraries warmed during build.
  • Version and base-image inputs are selected by docker-bake.hcl.
  • s6-overlay bits live under root/.
  • Renovate tracks ESPHome and build input bumps from the bake annotations.

Install Esphome on Unraid in a few clicks.

Find Esphome in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for Esphome Review the template variables and paths Click Install

Related apps

Details

Repository
ghcr.io/imagegenius/esphome
Last Updated2026-07-12
First Seen2023-01-22

Runtime arguments

Web UI
http://[IP]:[PORT:6052]
Network
bridge
Shell
bash
Privileged
false

Template configuration

WebUIPorttcp

WebUI Port

Target
6052
Default
6052
AppdataPathrw

Appdata Path

Target
/config
ESPHOME_DASHBOARD_USE_PINGVariable

Use ping rather than mDNS to get device status, set to true if devices are appearing offline

Default
false
PUIDVariable

UID for permissions. Do not change unless you know what you're doing.

Default
99
PGIDVariable

GID for permissions. Do not change unless you know what you're doing.

Default
100
UMASKVariable

UMASK for newly created files. Do not change unless you know what you're doing.

Default
022