Kubernetes с Wordpress PV C получить старый файл Wordpress - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть docker изображение для моего приложения WordPress с этим

FROM wordpress:php7.4-apache
COPY . /var/www/html

после того, как у меня есть pu sh мое изображение в моем личном репо. Когда я запускаю мое новое изображение, файл моего нестандартного wordpress находится в /var/www/html.

, но когда я создаю развертывание в kubernetes с pv c, мой файл по пути / var / www/html замените файл из WordPress: php7 .4- apache image

я создаю свой PV c, как это

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: wp-pv-claim
      namespace: custom
      labels:
        app: wordpress
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 20Gi

и мое развертывание выглядит как

apiVersion: apps/v1
kind: Deployment
metadata:
  namespace: custom
  name: wordpress
  labels:
    app: wordpress
spec:
  replicas: 1
  selector:
    matchLabels:
      app: wordpress
  template:
    metadata:
      labels:
        app: wordpress
    spec:
      containers:
        - image: privaterepo.azurecr.io/custom:latest
          name: wordpress
          env:
            - name: WORDPRESS_DB_HOST
              value: mysqlhost
            - name: DB_HOST
              value: mysqlhost
            - name: WORDPRESS_DB_USER
              value: mysqluser
            - name: DB_USER
              value: mysqluser
            - name: WORDPRESS_DB_PASSWORD
              value: mysqlpassword
            - name: DB_PASS
              value: mysqlpassword
            - name: WORDPRESS_DB_NAME
              value: dbname
            - name: DB_NAME
              value: dbname
            - name: WORDPRESS_TABLE_PREFIX
              value: wp
          ports:
            - containerPort: 80
              name: client
          volumeMounts:
            - name: wordpress-persistent-storage
              mountPath: /var/www/html
      volumes:
        - name: wordpress-persistent-storage
          persistentVolumeClaim:
            claimName: wp-pv-claim

1 Ответ

1 голос
/ 07 февраля 2020

На основании всего, что обсуждалось в комментариях, дающих ответ для следующих поколений:)

Согласно monachus / wordpress

Что не так с Wordpress Docker image?

Контейнер, поставляемый Wordpress, копирует содержимое / usr / src / wordpress в / var / www/html при первом создании контейнера, но только если в / var контента уже нет / www/html. Это означает, что если вы уже развернули контейнер и у вас есть постоянный том, смонтированный в этом месте, вы можете обновить свой контейнер с 4.7.4 до 4.8.1, и хотя он утверждает, что он 4.8.1, ничего случается.

Правильный Dockerfile должен содержать /usr/src/wordpress путь вместо /var/www/html

FROM wordpress:php7.4-apache
COPY . /usr/src/wordpress
...