Копировать изображение с локального на постоянный том - PullRequest
0 голосов
/ 18 июня 2020

Я пытаюсь скопировать изображение на свой постоянный том (это похоже на изображение по умолчанию, которое я хочу, чтобы мое приложение использовало его, когда у пользователя нет изображения, поэтому оно поставляется с c файлами приложения)

Итак, то, что я сделал до сих пор, - это создание файла deployments.yml, подобного этому:

- apiVersion: apps/v1
  kind: Deployment
  metadata:
    annotations:
      kompose.cmd: kompose convert -f docker-compose.yml -o kubemanifests.yaml
      kompose.version: 1.19.0 (f63a961c)
    creationTimestamp: null
    labels:
      io.kompose.service: webserver
    name: webserver
  spec:
    replicas: 1
    strategy: {}
    selector:
      matchLabels:
        io.kompose.service: webserver
    template:
      metadata:
        annotations:
          kompose.cmd: kompose convert -f docker-compose.yml -o kubemanifests.yaml
          kompose.version: 1.19.0 (f63a961c)
        creationTimestamp: null
        labels:
          io.kompose.service: webserver
      spec:
        containers:
        - image: example.com:5000/app
          name: webserver
          ports:
          - containerPort: 80
          - containerPort: 8000
          resources: {}
          volumeMounts:
            - mountPath: /usr/src/app/static
              name: my-volume
        imagePullSecrets:
          - name: privateregcred
        restartPolicy: Always
        volumes:
          - name: my-volume
            persistentVolumeClaim:
              claimName: my-volume
  status: {}
- apiVersion: v1
  kind: PersistentVolumeClaim
  metadata:
    creationTimestamp: null
    labels:
      io.kompose.service: my-volume
    name: my-volume
  spec:
    accessModes:
    - ReadWriteOnce
    resources:
      requests:
        storage: 2Gi
  status: {}

Of c это всего лишь часть файла (что касается моей проблемы), поэтому когда я запускаю его, он отлично работает, когда я сохраняю любые изображения и удаляю свой модуль веб-сервера и заново воссоздаю старые изображения, все в порядке. и это результат kubectl get pvc

NAME           STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
my-volume   Bound    pvc-e76e8f50-8716-44fa-9d34-9d0b70ae9e4e   2Gi        RWO            standard       45m

Но моя проблема в том, что я хочу скопировать свое изображение по умолчанию на том, поэтому я попытался сделать

kubectl cp webServer/app/static/profilepics/default.png pvc/my-volume:/profilepics

и всегда одна и та же проблема Error from server (NotFound): pods "wemet-volume" not found

Я попытался изменить имя, добавить значение по умолчанию в качестве пространства имен и всегда тот же результат, я что-то делаю не так ??

1 Ответ

2 голосов
/ 18 июня 2020

Вы пытаетесь скопировать напрямую на pv c с именем my-volume. Попробуйте скопировать на смонтированный том подов, например: kubectl cp yourfile.png webserver: / usr / src / app / static / profilepics

...