Я немного запутался здесь. Он работает как обычный докер-контейнер, но когда он входит внутрь контейнера, он не работает. Вот как я это делаю.
Dockerfile на моем локальном компьютере для создания образа и публикации в реестре Docker
FROM alpine:3.7
COPY . /var/www/html
CMD tail -f /dev/null
Теперь, если я просто вытяну изображение (после удаления локального) и запустлю как контейнер. Это работает, и я могу видеть мои файлы в /var/www/html.
Теперь я хочу использовать это внутри моего кластера kubernetes.
Def: Minikube --vm-driver = нет
Я запускаю kube внутри миникуба с драйвером без опции Так для кластера с одним узлом.
EDIT
Я могу видеть свои данные в / var / www / html, если я удалю монтирования томов и заявку из файла развертывания.
Файл развертывания
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
io.kompose.service: app
name: app
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
creationTimestamp: null
labels:
io.kompose.service: app
spec:
securityContext:
runAsUser: 1000
runAsGroup: 1000
containers:
- image: kingshukdeb/mycode
name: pd-mycode
resources: {}
volumeMounts:
- mountPath: /var/www/html
name: claim-app-storage
restartPolicy: Always
volumes:
- name: claim-app-storage
persistentVolumeClaim:
claimName: claim-app-nginx
status: {}
ПВХ файл
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
io.kompose.service: app-nginx1
name: claim-app-nginx
spec:
storageClassName: testmanual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Mi
status: {}
PV файл
apiVersion: v1
kind: PersistentVolume
metadata:
name: app-nginx1
labels:
type: local
spec:
storageClassName: testmanual
capacity:
storage: 100Mi
accessModes:
- ReadWriteOnce
hostPath:
path: "/data/volumes/app"
Теперь, когда я запускаю эти файлы, он создает pv, pvc, и pvc привязан к pv. Но если я захожу внутрь своего контейнера, я не вижу свои файлы. hostpath
- это / data / объемы / приложение . Любые идеи будут оценены.