Файл настроек в Docker
Файл настроек подменяет
стандартный конфиг,
если сервер запускают
с указанием этого файла.
Входной скрипт образа
сам подставляет программу
postgres,
когда аргумент начинается
с дефиса,
поэтому в описании сервиса
достаточно передать флаг
с путём к файлу.
В postgresql.conf
лимит соединений равен 40:
max_connections = 40
Сервис db
на postgres:18
с паролем demo
монтирует файл
в /etc/postgresql/postgresql.conf,
том cfgdata
на /var/lib/postgresql
и запуск с указанием конфига:
services:
db:
image: postgres:18
environment:
POSTGRES_PASSWORD: demo
command: ["-c", "config_file=/etc/postgresql/postgresql.conf"]
volumes:
- cfgdata:/var/lib/postgresql
- ./postgresql.conf:/etc/postgresql/postgresql.conf
volumes:
cfgdata:
Фоновый подъём проекта:
docker compose up -d
Запрос параметра внутри сервиса
показывает 40
для max_connections -
число совпало с файлом:
docker compose exec db psql -U postgres -c "SHOW max_connections"
Задайте в файле site.conf значение 25 для лимита соединений, смонтируйте его как основной конфиг и поднимите сервис shop на томе store.
Опишите словами, что сервер видит 25, не переписывая таблицу ответа.