如何使用docker-compose启动Postgres时设置PGOPTIONS
我想用PGOPTIONS
docker-compose
启动一个Postgres数据库,并使用PGOPTIONS
环境variables传递一些configuration。 我docker-compose.yml
如下所示:
version: '2' services: db: image: postgres environment: - POSTGRES_USER=dbuser - POSTGRES_PASSWORD=dbpw - PGOPTIONS='-c track_activities=on -c track_counts=on -c track_io_timing=on'
当我使用docker-compose up db
启动这个服务时docker-compose up db
我得到:
db_1 | FATAL: parameter "track_io_timing" requires a Boolean value db_1 | done db_1 | server started db_1 | FATAL: parameter "track_io_timing" requires a Boolean value db_1 | psql: FATAL: parameter "track_io_timing" requires a Boolean value
它似乎没有跟tracking_io_timing
参数有关,因为当我从PGOPTIONS
variables中删除一个,我得到相同的错误,但是对于track_counts
variables。 所以我怀疑我宣布PGOPTIONS
的方式有问题。
在使用您提供的Docker-Compose文件时,这里的结果是相同的。 我试图使用替代语法来定义环境variables,我不再有错误了:
version: '2' services: db: image: postgres environment: POSTGRES_USER: dbuser POSTGRES_PASSWORD: dbpw PGOPTIONS: "-c track_activities=on -c track_counts=on -c track_io_timing=on"