Могу ли я использовать pg_dumpall без установки postgresQL?

Я попытался в моем Docker-контейнере (из alpine3.6) выполнить команду для установки pg_dumpall, которую я видел в Интернете:

apk update && apk upgrade

а потом

apk add --no-cache postgresql-client-common

и наконец

apk add --no-cache postgresql-client

Работала только последняя из двух попыток, которые я пробовал (одна без общей), но у меня все равно не будет pg_dump или же pg_dumpall в моих файлах

2 ответа

Пробовать

apk add postgresql-client

Вы можете увидеть все включенные двоичные файлы этого пакета по этой ссылке. Этот пакет имеет pg_dumpall

https://pkgs.alpinelinux.org/contents?file=&path=&name=postgresql-client&branch=v3.8&repo=main&arch=aarch64

Каждая версия Alpine имеет свой клиент postgresql. Для себя я написал такую ​​логику:

      ARG PSQL_VERSION=0
RUN if [ "$PSQL_VERSION" = "13" ]; then \
        echo "http://dl-cdn.alpinelinux.org/alpine/v3.14/main" >> /etc/apk/repositories; \
    elif [ "$PSQL_VERSION" = "12" ]; then \
        echo "http://dl-cdn.alpinelinux.org/alpine/v3.12/main" >> /etc/apk/repositories; \
    elif [ "$PSQL_VERSION" = "11" ]; then \
        echo "http://dl-cdn.alpinelinux.org/alpine/v3.10/main" >> /etc/apk/repositories; \
    elif [ "$PSQL_VERSION" = "10" ]; then \
            echo "http://dl-cdn.alpinelinux.org/alpine/v3.8/main" >> /etc/apk/repositories; \
    fi
RUN apk update
RUN apk --no-cache add postgresql-client

И теперь вы можете передать нужную версию клиента:

      docker build -t backuper --build-arg PSQL_VERSION=12 . 
Другие вопросы по тегам