Lar*_*Cai 4 kvm kubernetes minikube
我有一个/home/ubuntu/workspace/web.conf由脚本生成的自己的 nginx 配置。我喜欢有它在/etc/nginx/conf.d,除了default.conf
下面是 nginx.yaml
api版本:v1
种类:豆荚
元数据:
名称: nginx
规格:
卷:
- 名称:webconf
主机路径:
路径:/home/ubuntu/workspace/web.conf
容器:
- 图像:nginx
名称: nginx
端口:
- 容器端口:18001
协议:TCP
卷挂载:
- 挂载路径:/etc/nginx/conf.d/web.conf
名称:网络
虽然它仅映射为文件夹
$ kubectl create -f nginx.yaml pod“nginx”创建 $ kubectl exec -it nginx -- bash root@nginx:/app# ls -al /etc/nginx/conf.d/ 共 12 个 drwxr-xr-x 1 根 4096 八月 3 日 12:27。 drwxr-xr-x 1 根 4096 八月 3 日 11:46 .. -rw-r--r-- 2 root root 1093 Jul 11 13:06 default.conf drwxr-xr-x 2 root root 0 Aug 3 11:46 web.conf
它适用于 docker 容器-v hostfile:containerfile。
我怎样才能在 kubernetes 中做到这一点?
BTW:我使用minikube0.21.0上Ubuntu 16.04 LTS与kvm
尝试使用subPath您的密钥volumeMounts:
apiVersion: v1
kind: Pod
metadata:
name: singlefile
spec:
containers:
- image: ubuntu
name: singlefiletest
command:
- /bin/bash
- -c
- ls -la /singlefile/ && cat /singlefile/hosts
volumeMounts:
- mountPath: /singlefile/hosts
name: etc
subPath: hosts
volumes:
- name: etc
hostPath:
path: /etc
Run Code Online (Sandbox Code Playgroud)
例子:
$ kubectl apply -f singlefile.yaml
pod "singlefile" created
$ kubectl logs singlefile
total 24
drwxr-xr-x. 2 root root 4096 Aug 3 12:50 .
drwxr-xr-x. 1 root root 4096 Aug 3 12:50 ..
-rw-r--r--. 1 root root 1213 Apr 26 21:25 hosts
# /etc/hosts: Local Host Database
#
# This file describes a number of aliases-to-address mappings for the for
# local hosts that share this file.
...
Run Code Online (Sandbox Code Playgroud)
其实是kvmminikube使用的造成的。
path: /home/ubuntu/workspace/web.conf
Run Code Online (Sandbox Code Playgroud)
如果我登录 minikube,它是 vm 中的文件夹。
$ ls -al /home/ubuntu/workspace # in minikube host
total 12
drwxrwxr-x 2 ubuntu ubuntu 4096 Aug 3 12:11 .
drwxrwxr-x 5 ubuntu ubuntu 4096 Aug 3 19:28 ..
-rw-rw-r-- 1 ubuntu ubuntu 1184 Aug 3 12:11 web.conf
$ minikube ssh
$ ls -al /home/ubuntu/workspace # in minikube vm
total 0
drwxr-xr-x 3 root root 0 Aug 3 19:41 .
drwxr-xr-x 4 root root 0 Aug 3 19:41 ..
drwxr-xr-x 2 root root 0 Aug 3 19:41 web.conf
Run Code Online (Sandbox Code Playgroud)
我不知道为什么 kvm 主机文件夹会像这样共享。
因此,我使用minikube mount命令,请参阅host_folder_mount.md,然后它按预期工作。
| 归档时间: |
|
| 查看次数: |
7020 次 |
| 最近记录: |