Wie erstelle ich eine Postgres-Erweiterung im Container?

Ich muss installierenhstore zu meinem Docker postgres
Hier ist mein gewöhnlicher Befehl in der Shell, um mein Bedürfnis auszuführen

psql -d template1 -c 'create extension hstore';

Wenn ich diese Zeile von meinem Container entferne, funktioniert es, aber ich habe ausgeführthstore Installation von mir selbst und ich muss jedem in meinem Projekt sagen, dass dies keine gute Praxis ist

Hier ist meinyml file

  postgres:
    build:
      context: .
      dockerfile: dockerfiles/devdb.dockerfile
    environment:
      POSTGRES_USER: uih
      POSTGRES_PASSWORD: uIhbod!
      POSTGRES_DB: uih_portal
    ports:
        - "5433:5432"

Hier ist meine Docker-Dateidevdb.dockerfile

FROM postgres:9.5

RUN mkdir -p /var/lib/postgresql-static/data
ENV PGDATA /var/lib/postgresql-static/data

# psql -d template1 -c 'create extension hstore;'
CMD ["psql", "-d", "template1", "-c", "'create extension hstore;'"]

RUN echo "hstore extension installed"

Nach dem Build kann ich es nicht zum Laufen bringen

$ docker-compose up postgres
Recreating uihportal_postgres_1
Attaching to uihportal_postgres_1
postgres_1       | psql: could not connect to server: No such file or directory
postgres_1       |      Is the server running locally and accepting
postgres_1       |      connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
uihportal_postgres_1 exited with code 2

Frage

Wie installiert manhstore aus der Docker-Datei?
Ich möchte ein Bild erstellen und es für das gesamte Projekt für mein Team wiederverwenden.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage