This release contains significant changes to the image.
If you have an issue with these changes, you can roll back to a previous release tag: https://github.com/oznu/docker-homebridge/releases
Replacing npm with pnpm
Plugins will be installed via pnpm instead of npm to move thing inline with other "new" Homebridge installs.
- Using
pnpminsteadnpmspeeds things up considerably; as an example, when updating the Homebridge UI on a Raspberry Pi Zero W; usingnpmtakes 5-10 minutes, whilepnpmtakes about 45 seconds. - If your
startup.shscript containsnpmcommands, these should be removed or replaced. - Homebridge will no longer load plugins installed globally using the
npm install -gcommand. - When upgrading to this image, your
node_modulesfolder will be deleted and all your plugins re-installed as per the contents of thepackage.jsonfile usingpnpm.
Removing arm6 / Raspberry Pi 1 and Raspberry Pi Zero W support
arm6 support is being removed. This should only impact users running on Raspberry Pi 1 and Raspberry Pi Zero W.
Installing Homebridge natively, without Docker, is still 100% supported on these devices, and can now be done using apt.
https://github.com/homebridge/homebridge/wiki/Install-Homebridge-on-Raspbian
Removing Alpine Linux variant
This image will no longer build the Alpine Linux variants of the image, only Ubuntu-based images will be available. Ubuntu does not support arm6, as a result this image will no longer be compatible with Raspberry Pi 1 and Raspberry Pi Zero W devices. The project will continue to build images for amd64, aarch64 and arm7 (Raspberry Pi 2 or later).
Currently the latest tag is an Alpine Linux based image, this will change to an Ubuntu Linux based image. For most users this change should be transparent.
If you have any custom start up scripts that use npm or apk, these will need to be updated to work with pnpm and apt respectively.
Removing various startup options
The following startup options will be removed:
PACKAGES- use the startup.sh script instead, you can edit this in the Homebridge UIHOMEBRIDGE_CONFIG_UI- the UI is now required to use this container and will always be enabledHOMEBRIDGE_CONFIG_UI_PORT- set the UI port via the config.json directlyHOMEBRIDGE_INIT_PORT- set the homebridge port in the config.json directlyTERMINATE_ON_ERROR- no longer required,hb-servicewill take care of managing the homebridge processHOMEBRIDGE_INSECURE- you can set this option via the Homebridge UIHOMEBRIDGE_DEBUG- you can set this option via the Homebridge UI
Other Changes
- The Homebridge UI no longer runs as
root- when executing privileged commands via the integrated terminal you will need to addsudo. - If permissions cannot be set on the
/homebridgevolume mount, the Homebridge service will start asrootinstead. - Default
PUIDandPGIDhave been changed from911:911to1000:1000. - The
crontabservice will no longer run inside the container. - The Avahi service will be enabled by default in all images, this can be disabled with
-e ENABLE_AVAHI=0. There is no longer a seperate tag foravahi.
Depreciated Tags
The following tags will no longer receive updates:
raspberry-pino-avahino-avahi-*debiandebian-*ubuntu-*amd64aarch64arm64v8arm32v6
Only the ubuntu and latest, and dated release tags will be maintained going forward. These tags will work on all supported architectures, automatically pulling down the correct image for your system.