С помощью следующей структуры yml файла мы можем легко и быстро развернуть контейнер с PostgreSQL и использовать все возможности данной СУБД для локальной разработки и не только.
version: '3.1'
volumes:
pg_project:
services:
pg_db:
image: postgres
restart: always
environment:
- POSTGRES_PASSWORD=secret
- POSTGRES_USER=postgres
- POSTGRES_DB=stage
volumes:
- pg_project:/var/lib/postgresql/data
ports:
- ${POSTGRES_PORT:-5432}:5432
Для запуска достаточно сохранить код указанный выше в файл docker-compose.yml, а затем выполнить команду docker-compose up -d.
После этого мы можем работать с нашей СУБД по адресу: 127.0.0.1:5432. Мы можем подключать наше приложение к только что созданной базе данных, указав для подключения данные из наших env переменных POSTGRES_PASSWORD, POSTGRES_USER, POSTGRES_DB соответственно. Либо подключиться с помощью программ для управления PostgreSQL, например pgAdmin.
Для остановки нашего контейнера без его удаления мы можем использовать команду docker-compose stop.