December 10, 2023

Как развернуть PostgreSQL в Docker

Для запуска контейнера Docker с базой данных PostgreSQL и сохранением данных между перезапусками, вы можете использовать следующие шаги:

  1. Установите Docker: Убедитесь, что Docker установлен на вашем компьютере. Если нет, вы можете загрузить его с официального сайта Docker.
  2. Создайте директорию для данных PostgreSQL: Создайте директорию на вашем хосте, где будут храниться данные PostgreSQL. Например:bash
mkdir /путь/к/вашей/директории/postgres_data

Запустите контейнер PostgreSQL: Используйте следующую команду для запуска контейнера PostgreSQL с сохранением данных в созданной вами директории:

docker run -d \
  --name postgres-container \
  -e POSTGRES_PASSWORD=ваш_пароль \
  -v /путь/к/вашей/директории/postgres_data:/var/lib/postgresql/data \
  -p 5432:5432 \
  postgres:latest

Здесь:

  • -d запускает контейнер в фоновом режиме.
  • --name задает имя контейнера (в данном случае, "postgres-container").
  • -e POSTGRES_PASSWORD устанавливает пароль для пользователя "postgres".
  • -v /путь/к/вашей/директории/postgres_data:/var/lib/postgresql/data монтирует директорию для хранения данных PostgreSQL.
  • -p 5432:5432 пробрасывает порт PostgreSQL.

Подключитесь к PostgreSQL: Используйте команду psql или любой удобный вам клиент для подключения к базе данных PostgreSQL:

docker exec -it postgres-container psql -U postgres

Введите пароль, который вы указали при запуске контейнера.

Создайте базу данных (по желанию): После подключения к PostgreSQL, вы можете создать базу данных:

CREATE DATABASE ваша_база_данных;

Или используйте существующую базу данных.

Остановите и перезапустите контейнер: Вы можете остановить контейнер с помощью команды:

docker stop postgres-container

Перезапустите контейнер:

docker start postgres-container