Metabase docker container crashing with ERROR: could not open extension control file "/usr/pgsql-14/share/extension/citext.control"

Hey all.

I'm trying to set up Metabase via the docker method, and I'm running into a problem. After fixing problems getting Metabase to connect to my remote PostgreSQL 14 instance, I got it connected and working. Now, it crashes shortly after verifying connectivity, at this line:

2024-10-10 21:19:07,704 ERROR liquibase.changelog :: ChangeSet migrations/001_update_migrations.yaml::v00.00-000::qnkhuat encountered an exception.

liquibase.exception.DatabaseException: ERROR: could not open extension control file "/usr/pgsql-14/share/extension/citext.control": No such file or directory [Failed SQL: (0) --

-- Name: citext; Type: EXTENSION; Schema: -; Owner: -

--

CREATE EXTENSION IF NOT EXISTS citext WITH SCHEMA public]

Right now it's very early stages - I intend to get PostgreSQL TLS security working, as well as HTTPS on the Metabase web interface, but I've just got to get the thing working first!

The line that concerns me is ERROR: could not open extension control file "/usr/pgsql-14/share/extension/citext.control": No such file or directory, because my PostgreSQL installation is... somewhat unique, in that I ensured that the database is located on our encrypted drives that are mounted shortly after boot time at a custom directory. This, obviously, for security reasons - so our data at rest is safe.

I was able to fix this by installing the postgres-contrib package onto my distribution.

For me, specifically, it was by running the following command (as I'm using PostgreSQL 14):

yum install postgresql14-contrib

Metabase now runs properly.