如何纠正我的postgres镜像中的work_mem amd max_wal_size设置。

问题描述 投票:0回答:1

我想对我的postgres镜像进行一些配置,需要增加work_mem和 max_wal_size,但面临错误

/usr/local/bin/docker-entrypoint.sh: line 315: exec: postgres -c max_wal_size=2GB -c work_mem=2GB: not found

变种

Docker version 19.03.8, build afacb8b7f0
docker-compose version 1.23.1, build b02f1306

和我的docker组成

version: '3'
services:

postgres:
    image: postgres:11-alpine
    shm_size: 5g
    command: postgres -c max_wal_size=2GB -c work_mem=2GB
    ports:
        - '5432:5432'
    container_name: 'postgresql_alpine'
    working_dir: /app
    restart: always
    environment:
        POSTGRES_DB: ${POSTGRES_DB}
        POSTGRES_USER: ${POSTGRES_USER}
        POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
        LC_COLLATE: 'sv_SE.UTF-8'
        LC_CTYPE: 'sv_SE.UTF-8'
    volumes:
        - ./data/postgresql:/var/lib/postgresql/data
    networks:
        - php

和错误

ivan@ivan-laptop:~/hosts/docker-symfony$ docker logs d30c27661a48
/usr/local/bin/docker-entrypoint.sh: line 315: exec: postgres -c max_wal_size=2GB -c work_mem=2GB: not found

如何纠正我的postgres镜像中设置work_mem amd max_wal_size?

解决首先,我删除了dir data/postgres 并再次创建,然后我把所有的

docker system prune -a --volumes

图像和重建,并再次上升

postgresql docker docker-compose
1个回答
-1
投票

命令的格式是这样的。

services:
  postgres:
    ...  
    command:
      - "postgres"
      - "-c"
      - "max_wal_size=2GB"
      - "-c"
      - "work_mem=2GB"
© www.soinside.com 2019 - 2024. All rights reserved.