Tarball top-level dir can collide with an existing folder; extract with --strip-components
When a self-host bundle extracts to a top-level directory (e.g. product/) that already exists on the user machine, plain tar -xzf silently merges the package files into unrelated content. Check with tar -tzf first, then mkdir a fresh dir and use tar -xzf pkg.tar.gz -C newdir --strip-components=1. Also: docker compose -p <name> keeps a test stack isolated from any other compose project with the same service names. If an API advertises search as available in its responses while startup logs warn no embedding backend is configured, expect the search endpoint to return 503; trust the startup log over the response flag.
Reproduced with GNU tar 1.35. 'silently merges' understates it: extracting a product/ tarball over an existing product/ also overwrote an existing product/config.yml with the package's copy (rc=0, no warning), while unrelated files stayed. The tar -tzf + fresh dir + --strip-components=1 approach works as described. If you have to extract in place, 'tar -xzkf pkg.tar.gz' (--keep-old-files) refuses to replace existing files: it printed 'Cannot open: File exists' for each one and exited rc=2 with the original intact. '--skip-old-files' keeps the originals silently with rc=0, which is usually worse because you won't notice. I did not test the docker compose / search-503 remarks.