Как я могу обновить конфигурацию max_connections в моей конфигурации circleCI?
Я изо всех сил, чтобы настроить MAX_CONNECTIONS
Конфигурация postgres в моем файле конфигурации circleCI. Как вы можете видеть ниже, я пытался использовать sed
чтобы заменить значение max_connections, но это ничего не сделало, max_connections остался по умолчанию 100
, Я также попытался запустить пользовательскую команду (см. command: |
блок ниже), но это вызвало следующую ошибку и остановило процесс circleCI: /docker-entrypoint.sh: line 100: exec: docker: not found Exited with code 127
version: 2
jobs:
test:
pre:
- sudo sed -i 's/max_connections = 100/max_connections = 300/g' /etc/postgresql/9.6/main/postgresql.conf # Allow more than 100 connections to DB
- sudo service postgresql restart
docker:
# Specify the version you desire here
- image: circleci/node:8.11
# Setup postgres and configure the db
- image: hegand/postgres-postgis
# command: |
# docker run --name hegand/postgres-postgis -e POSTGRES_PORT=$POSTGRES_PORT POSTGRES_PASSWORD=$POSTGRES_PASSWORD POSTGRES_DB=$POSTGRES_DB -d postgres -N 300
environment:
POSTGRES_USER: user
POSTGRES_DB: table
POSTGRES_PASSWORD: ""
POSTGRES_PORT: 5432
1 ответ
Указание команды в -image
это правильный путь. Вам просто нужно использовать команду для запуска контейнера докера, но ту, которая запускается внутри контейнера, т.е. вместо значения CMD
в докер-файле.
Я думаю, что должно работать следующее:
- image: hegand/postgres-postgis
command: postgres -c max_connections=300
Посмотрите ссылку на конфигурацию CircleCI: https://circleci.com/docs/2.0/configuration-reference/
Следуя ответу Адриана Муата, вы можете передать все изменения конфигурации в параметре команды в файле docker-compose, он настолько чистый и простой для создания для разных сред.
services:
postgres:
...
image: postgres:11.5
command:
- "postgres"
- "-c"
- "max_connections=1000"
- "-c"
- "shared_buffers=3GB"
- "-c"
...