如何增加官方postgreSQL 10.0 docker镜像中的max_connection

时间:2017-11-12 17:54:10

标签: postgresql docker sed

问题

我使用默认的docker postgresql配置打开了太多连接

目标

我想扩展max_connection而不使用卷来安装配置(我需要在我的CI环境中默认使用它。)

我尝试使用sed来编辑配置,但这没有任何效果。

重写postgresql docker官方映像默认配置的推荐方法是什么?

3 个答案:

答案 0 :(得分:6)

就像(您只需使用CMD覆盖默认postgres -N 500)一样简单:

docker run -d --name db postgres:10 postgres -N 500

您可以使用以下方式进行检查:

docker run -it --rm --link db:db postgres psql -h db -U postgres

show max_connections;

max_connections 
-----------------
500
(1 row)

答案 1 :(得分:4)

运行此docker-compose.yml

version: '2'
services:
  postgres:
    image: postgres:10.3-alpine
    command: postgres -c 'max_connections=200'
    environment:
      POSTGRES_DB: pgdb
      POSTGRES_PASSWORD: postgres
      POSTGRES_USER: postgres
    stdin_open: true
    tty: true
    ports:
    - 5432:5432/tcp

答案 2 :(得分:0)

您需要开发一个初始化脚本。从环境变量接受最大连接值,并在从初始化脚本启动期间对其进行更新。终于启动postgreSQL服务