Я использую Docker для Windows 2.3.0.4 (стабильная версия) с поддержкой WSL2 в Windows 10 версии 2004 и с включенной поддержкой Kubernetes.
Я пытаюсь создать следующий модуль:
apiVersion: v1
kind: Pod
metadata:
name: api0
spec:
volumes:
- name: "mongo-data"
hostPath:
path: "/c/wr/volumes/mongo/data"
containers:
- name: db
image: mongo:3.6.19-xenial
volumeMounts:
- mountPath: "/data/db"
name: "mongo-data"
resources:
limits:
memory: "512Mi"
cpu: "1"
ports:
- containerPort: 27017
У меня проблема с томом mongo-data
; когда модуль создается с помощью kubectl apply -f api0.yml
, модуль работает правильно, а коллекции MongoDB сохраняются после удаления и повторного применения модуля.
Но путь C:\wr\volumes\mongo\data
, подключенный к контейнеру mongo db, не содержит файлов данных и всегда пуст
Как я упоминал ранее, состояние сохраняется где-то, но не по указанному пути.
Что я упустил?
Я попытался указать путь в следующих форматах:
- /c/wr/тома/монго/данные
- //c/wr/тома/монго/данные
- //////c/wr/тома/монго/данные
- /mnt/c/wr/тома/монго/данные
И я даже пытался сослаться на путь /opt/data
в файловой системе wsl, но файлов данных там никогда не было.
C:\wr\volumes\mongo\data
? Вы пытались остановить модуль, переместить эту папку в другое место, а затем создать папку с нуля, запустить модуль и проверить, сохраняются ли все коллекции? - person Nick   schedule 18.08.2020kubectl get pods api0 -o wide
даст вам узел, на котором работает контейнер. У вас есть только один узел Windows или несколько? Вы проверяете правильный узел? что говоритkubectl describe pod api0
? Вы видите там правильное монтирование томов? Вы можете войти в модуль и проверить, не пусто ли/data/db
? - person Nick   schedule 18.08.2020