Postgres用户未创建Kubernetes

时间:2018-09-29 12:56:12

标签: postgresql kubernetes yaml

我具有以下 YAML 文件,用于创建Postgres服务器实例

kind: Deployment
apiVersion: apps/v1beta1
metadata: 
 name: spring-demo-db
 labels: 
  app: spring-demo-application
spec: 
 replicas: 1
 selector: 
  matchLabels: 
   app: spring-demo-db
 template: 
  metadata: 
   creationTimestamp: null
   labels: 
    app: spring-demo-db
  spec: 
   containers: 
    - name: spring-demo-db
      image: postgres:10.4
      ports: 
      - name: spring-demo-db
        containerPort: 5432
        protocol: TCP
      env: 
      - name: POSTGRES_PASSWORD
        value: "springdemo"
      - name: POSTGRES_USER
        value: "springdemo"
      - name: POSTGRES_DB
        value: "springdemo"
      volumeMounts:
            - mountPath: /var/lib/postgresql/data
              name: postgres-storage
      terminationMessagePath: /dev/termination-log
      terminationMessagePolicy: File
      imagePullPolicy: IfNotPresent
   volumes: 
    - name: "postgres-storage"
      persistentVolumeClaim: 
       claimName: spring-demo-pv-claim   
   restartPolicy: Always

但是当ssh进入容器时,未创建用户 springdemo 。我整天都在挣扎。这可能是问题

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

您没有提到您正在运行的命令以及遇到的错误,所以我在这里猜测,但是请尝试以下操作:

kind: Deployment
apiVersion: apps/v1beta1
metadata: 
 name: spring-demo-db
 labels: 
  app: spring-demo-application
spec: 
 replicas: 1
 selector: 
  matchLabels: 
   app: spring-demo-db
 template: 
  metadata: 
   creationTimestamp: null
   labels: 
    app: spring-demo-db
  spec: 
   containers: 
    - name: spring-demo-db
      image: postgres:10.4
      ports: 
      - name: spring-demo-db
        containerPort: 5432
        protocol: TCP
      env: 
      - name: POSTGRES_USER
        value: "springdemo"
      - name: POSTGRES_DB
        value: "springdemo"
      - name: POSTGRES_PASSWORD
        value: "springdemo"
      volumeMounts:
            - mountPath: /var/lib/postgresql/data
              name: postgres-storage
      terminationMessagePath: /dev/termination-log
      terminationMessagePolicy: File
      imagePullPolicy: IfNotPresent
   volumes: 
    - name: "postgres-storage"
      persistentVolumeClaim: 
       claimName: spring-demo-pv-claim   
   restartPolicy: Always

但是如果它不起作用,请使用Helm chart,因为除其他问题外,您以不安全的方式传递密码,这是个坏主意。