shu*_*van 4 postgresql docker docker-compose
我想为我的 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
Run Code Online (Sandbox Code Playgroud)
版本
Docker version 19.03.8, build afacb8b7f0
docker-compose version 1.23.1, build b02f1306
Run Code Online (Sandbox Code Playgroud)
和我的码头工人组成
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
Run Code Online (Sandbox Code Playgroud)
和错误
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
Run Code Online (Sandbox Code Playgroud)
如何更正我的 postgres 图像中的 set work_mem amd max_wal_size ?
解决
首先我删除目录data/postgres并再次创建,然后删除所有
docker system prune -a --volumes
Run Code Online (Sandbox Code Playgroud)
图像并重建并再次启动
小智 11
默认的 postgres Docker 镜像入口点直接接受参数,您应该postgres在命令序列中省略。
version: '3'
services:
postgres:
image: postgres:12-alpine
...
command: >
-c work_mem=256MB
-c maintenance_work_mem=256MB
-c max_wal_size=1GB
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5640 次 |
| 最近记录: |