Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在kubernetes中将Linux用作操作系统并将kvm用作驱动程序时,VM文件夹是什么?_Kubernetes_Kvm_Minikube - Fatal编程技术网

在kubernetes中将Linux用作操作系统并将kvm用作驱动程序时,VM文件夹是什么?

在kubernetes中将Linux用作操作系统并将kvm用作驱动程序时,VM文件夹是什么?,kubernetes,kvm,minikube,Kubernetes,Kvm,Minikube,装载主机路径类型的卷时,为每个操作系统和每个驱动程序提供名称VM 尽管如此,它仍缺少该案例: 操作系统:linux 驱动程序:kvm 主机文件夹:/home 虚拟机文件夹: 这是我希望使用的目标部署,以避免在每次更改代码后重新创建映像 这仅适用于开发环境。在生产环境中,代码将直接出现在映像中 apiVersion: extensions/v1beta1 kind: Deployment metadata: name: php-hostpath spec: replicas: 1

装载主机路径类型的卷时,为每个操作系统和每个驱动程序提供名称VM

尽管如此,它仍缺少该案例:

  • 操作系统:linux
  • 驱动程序:kvm
  • 主机文件夹:/home
  • 虚拟机文件夹:
这是我希望使用的目标部署,以避免在每次更改代码后重新创建映像

这仅适用于开发环境。在生产环境中,代码将直接出现在映像中

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
    name: php-hostpath
spec:
  replicas: 1
  template:
    metadata:
  labels:
    app: php-hostpath
spec:
  containers:
  - name: php-hostpath
    image: php:7.0-apache
    ports:
    - containerPort: 80
    volumeMounts:
      - name: vol-php-hostpath
        mountPath: /var/www/html
  volumes:
  - name: vol-php-hostpath
    hostPath:
      path: /hosthome/amine/DockerProjects/gcloud-kubernetes/application/06-hostPath-volume-example-minikube/src/
谢谢…

基于此,KVM驱动程序中尚未实现主机文件夹共享。这就是我实际使用的驱动程序

要克服这一问题,有两种解决方案:

  • 使用virtualbox驱动程序,通过将本地主机
    /home/the_USR/…
    上的路径更改为
    /hosthome/the_USR/…
    来装载主机路径卷

  • 根据命令
    $minikube Mount/home/the_USR/…
    将卷装载到minikube虚拟机。该命令将返回minikube VM上已装入卷的路径。下面是一个例子

例子 (a)在minikube虚拟机上装载卷

minikube mount
命令返回路径/mount-9p

$ minikube mount -v 3 /home/amine/DockerProjects/gcloud-kubernetes/application/06-hostPath-volume-example-minikube
Mounting /home/amine/DockerProjects/gcloud-kubernetes/application/06-hostPath-volume-example-minikube into /mount-9p on the minikubeVM
This daemon process needs to stay alive for the mount to still be accessible...
2017/03/31 06:42:27 connected
2017/03/31 06:42:27 >>> 192.168.42.241:34012 Tversion tag 65535 msize 8192 version '9P2000.L'
2017/03/31 06:42:27 <<< 192.168.42.241:34012 Rversion tag 65535 msize 8192 version '9P2000'
(c)检查安装卷是否工作正常

amine@amine-Inspiron-N5110:~/DockerProjects/gcloud-kubernetes/application/06-hostPath-volume-example-minikube$ kubectl exec -ti php-hostpath-3498998593-6mxsn bash
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php 
<?php
echo "This is my first docker project";
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php                                                                                                                                 
<?php

echo 'This is my first hostPath on kubernetes';
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php 
<?php

echo 'This is my first hostPath on kubernetes';
root@php-hostpath-3498998593-6mxsn:/var/www/html# 
amine@amine-Inspiron-N5110:~/DockerProjects/gcloud kubernetes/application/06主机路径卷示例minikube$kubectl exec-ti php-hostPath-3498998593-6mxsn bash
root@php-hostpath-3498998593-6mxsn:/var/www/html#cat index.php

无论如何,您应该考虑使用A而不是部署。在Apache中,您可能只提供静态文件(在这种情况下,它不是真正的有状态应用程序),但我仍然认为它值得一提。
amine@amine-Inspiron-N5110:~/DockerProjects/gcloud-kubernetes/application/06-hostPath-volume-example-minikube$ kubectl exec -ti php-hostpath-3498998593-6mxsn bash
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php 
<?php
echo "This is my first docker project";
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php                                                                                                                                 
<?php

echo 'This is my first hostPath on kubernetes';
root@php-hostpath-3498998593-6mxsn:/var/www/html# cat index.php 
<?php

echo 'This is my first hostPath on kubernetes';
root@php-hostpath-3498998593-6mxsn:/var/www/html#