Запуск PostgreSQL и pgAdmin в Docker
В данном руководстве мы будем рассматривать установку базы данных Postgres и связанной с ней админ-панели PgAdmin, используя Docker. С помощью Docker мы сможем выполнить все необходимые шаги быстро и легко.
Что такое Postgres и pgAdmin?
PostgreSQL, также известная как Postgres, - это мощная система управления объектно-реляционными базами данных с открытым исходным кодом. PgAdmin, в свою очередь, представляет собой веб-инструмент с графическим интерфейсом, который позволяет легко взаимодействовать с базами данных Postgres.
ОС используемая в статье
Эта установка будет выполняться на операционной системе Windows 11 (версия 21H2) с установленной версией Docker v20.10.20.
Примечание: все тоже самое будет работать и из под других ОС, если у вас есть какой-либо интерфейс.
Выполнение установки Postgres и pgAdmin в Docker
Чтобы выполнить установку, следуйте инструкциям ниже:
- Откройте терминал.
- Запустите Docker.
- Установите последнюю версию Postgres, введя следующую команду в терминал:
docker pull postgres:latest
. Если вы хотите установить другую версию Postgres, перейдите на сайт с версиями образов на Docker Hub и выберите нужную версию. - Запустим контейнер с Postgres, используя следующую команду в терминале:
>> docker run --name postgres-dev -e POSTGRES_PASSWORD=postgresmaster -p 5432:5432 -d postgres
Здесь:
--name
- задает имя контейнера.-e POSTGRES_PASSWORD
- задает пароль для пользователя Postgres.-p
- пробрасывает порт по умолчанию 5432.-d
- задает используемый образ, в нашем случае это Postgres.
Также можно добавить дополнительные опции:
-e POSTGRES_DB
- задает имя базы данных.
-e POSTGRES_USER
- задает имя пользователя.
-
Чтобы установить последнюю версию PgAdmin, выполните следующую команду:
docker pull dpage/pgadmin4:latest
. Если вы хотите установить другую версию, вы можете посетить сайт с образами: Docker Hub. -
Чтобы запустить контейнер с PgAdmin, выполните следующую команду:
>> docker run --name pgadmin-dev -e PGADMIN_DEFAULT_EMAIL=your@mail.com -e PGADMIN_DEFAULT_PASSWORD=postgresmaster -p 82:80 -d dpage/pgadmin4`
Здесь:
--name
- название нашего контейнера.-e PGADMIN_DEFAULT_EMAIL
- ваш email.-e PGADMIN_DEFAULT_PASSWORD
- ваш пароль, тот же, что вы использовали при запуске Postgres.-p
- порт по умолчанию 82.-d
- образ PgAdmin.
- Перейдите на страницу http://localhost:82/login/ и введите свои учетные данные, которые вы использовали при запуске контейнера с PgAdmin.
После успешного входа откроется интерфейс администрирования.
- Далее, нажмите на Servers -> Register -> Server
Во вкладке General введите:
name
- название для сервера.
Во вкладке Connection (соединение) введите:
Host name / address
- 172.17.0.2 или, если этот IP не подходит, узнайте его с помощью команды:docker inspect posgres-dev
от контейнера с Postgres.Port
- 5432 или ваш порт, на который вы запустили контейнер.Username
- по умолчанию при запуске суперпользователь: postgres, если вы не задали переменнуюPOSTGRES_USER
.Password
- пароль, в вашем случае, этоpostgresmaster
.
Шаг 9. Сохраните настройки, и вы увидите, что PgAdmin подключился к контейнеру с вашим Postgres.