我正在尝试使用env POSTGRES_INITDB_ARGS为postgres容器设置lc-collate参数。但是这个env被忽略了,在部署应用后,我得到了默认值lc_collate
这是我的部署
apiVersion: apps/v1
kind: Deployment
metadata:
name: example-postgres-1
labels:
app: example-app
spec:
replicas: 1
selector:
matchLabels:
app: example-app
tier: postgres
template:
metadata:
labels:
app: example-app
tier: postgres
spec:
containers:
- image: postgres
name: postgres
env:
- name: POSTGRES_INITDB_ARGS
value: --lc-collate=C
- name: POSTGRES_DB
value: postgres
- name: POSTGRES_USER
value: user
- name: POSTGRES_PASSWORD
value: user
- name: PGDATA
value: /var/lib/postgresql/data/pgdata
ports:
- containerPort: 5432
name: postgres
volumeMounts:
- name: example-postgres
mountPath: /var/lib/postgresql/data
args: ["-c", "max_connections=200"]
volumes:
- name: example-postgres
persistentVolumeClaim:
claimName: example-postgres
同时,我尝试设置**POSTGRES_INITDB_ARGS:“--lc-collate=C”**通过使用docker-compose:
version: "3.9"
services:
postgres:
image: postgres:13.3
environment:
POSTGRES_DB: "postgresTest"
POSTGRES_USER: "user"
POSTGRES_PASSWORD: "user"
POSTGRES_INITDB_ARGS: "--lc-collate=C"
ports:
- "3432:5432"
对我很有效
我在kuberntes部署中设置POSTGRES_INITDB_ARGS做错了什么?如果不对,如何通过创建容器creting来设置lc_collate?
我正在尝试使用env POSTGRES_INITDB_ARGS为postgres容器设置lc-collate参数。但是这个env被忽略了,在应用后,我得到了默认值lc_collate
1条答案
按热度按时间8hhllhi21#
你的文件看起来没问题。我已经申请了我的GKE集群1你的清单,它似乎工作正常。
但是,在docker compose中,posgres版本是
13.3
,而在k8s manifest中,它的版本是latest
(不是最新版本)。试着设置13。3在舱单太和检查,如果它的工作