CompreFace Add-on broken?

Dear Community,

I’m currently using Double Take along with Frigate and CompreFace for facial recognition. I’ve been running CompreFace successfully for about a year without any issues. However, after updating to Home Assistant Core 2025, CompreFace stopped working. Frigate and Double Take are still functioning correctly.

I’m seeing a lot of log entries.

When I try to access the CompreFace web interface via its IP address on port 8000, I get the following error message.

Any help or suggestions would be greatly appreciated!

Kind thanks in advance,

Senne

Have you checked in the repo where the software came from? Also you could check here…
blakeblackshear/frigate · Discussions · GitHub is another good place to get help with Frigate.

1 Like

fixed this by creating a local addon

here is how to do it:
open terminal from inside HA

mkdir -p /addons/local/compreface
cd /addons/local/compreface

create file README.md

CompreFace is a free and open-source face recognition service hosted via Docker.

This add-on runs the official exadel/compreface image and exposes the web interface on port 8000.

Access: http://<home_assistant_ip>:8000

Note: Data is stored in /data inside the container.

create file config.yaml
name: CompreFace
version: “1.0.0”
slug: compreface
description: “Free and open-source face recognition service by Exadel”
startup: services
boot: auto
ports:
80/tcp: 8000
arch:

  • amd64
  • aarch64
  • armv7
    map:
  • data:rw
    image: “exadel/compreface”

create file Dockerfile
FROM exadel/compreface

ENV POSTGRES_DATA_DIR=/data

after creating those files in that directory created first:

reload addons and refresh all browser cache or just restart HA
after that add local addon compreface and start it.

other solution:
Could you upgrade to 1.2.0 · Issue #30 · jakowenko/double-take-hassio-addons

Hi there!

I implemented your solution and was able to get it working, thank you very much!

I only have one question as, for some reason, whenever I power off my home assisntant server or whenever I install an update and need to restart the system I loose all my configuration for compreface and need to reconfigure the compreface instance, create a new user, create a new recognition server and, again, train all my faces.

I have tried using chatGPT to find solutions to this issue but it has not been very helpful.

Did you also face this issue?

If so, how did you end up solving it?

THank you,

Daniel

yes, I did i fixed it now i have these:
ompreface-uus $ cat Dockerfile
FROM exadel/compreface:1.0.0
ENV PGDATA=/data/database
RUN apt-get update && apt-get install jq -y && rm -rf /var/lib/apt/lists/*
COPY postgresql.conf /etc/postgresql/13/main/postgresql.conf
COPY run.sh /
CMD [“/run.sh”]
compreface-uus $ cat config.json
{
“name”: “Exadel CompreFace”,
“version”: “1.0.0”,
“url”: “GitHub - exadel-inc/CompreFace: Leading free and open-source face recognition system”,
“slug”: “compreface-uus”,
“description”: “Exadel CompreFace is a leading free and open-source face recognition system”,
“arch”: [“amd64”],
“startup”: “application”,
“boot”: “auto”,
“ports”: {
“80/tcp”: 8000
},
“ports_description”: {
“80/tcp”: “UI/API”
},
“options”: {
“POSTGRES_URL”: “jdbc:postgresql://localhost:5432/frs”,
“POSTGRES_USER”: “compreface”,
“POSTGRES_PASSWORD”: “M7yfTsBscdqvZs49”,
“POSTGRES_DB”: “frs”,
“API_JAVA_OPTS”: “-Xmx1g”
},
“schema”: {
“POSTGRES_URL”: “str”,
“POSTGRES_USER”: “str”,
“POSTGRES_PASSWORD”: “str”,
“POSTGRES_DB”: “str”,
“API_JAVA_OPTS”: “str”
}
}
compreface-uus $ cat run.sh
#!/bin/bash

Entrypoint

Ensure persistent data is stored in /data/ and then start the stack

set -euo pipefail

start() {
echo “Starting CompreFace” >&2
values=$(cat /data/options.json)
for s in $(echo “$values” | jq -r “to_entries|map("(.key)=(.value|tostring)")|.” ); do
export “${s?}”
done

if [ “$PGDATA” == “/data/database” ] && [ -d /data ]
then
if [ ! -d /data/database ]
then
cp -rp /var/lib/postgresql/data /data/database
fi
fi

chown -R postgres:postgres “$PGDATA”

exec /usr/bin/supervisord
}

if grep -q avx /proc/cpuinfo
then
start
else
echo “AVX not detected” >&2
exit 1
fi
allso copy postgresql.conf from original addon to the local addons folder.