在AWS EKS上附加带有持久性卷的NGINX配置文件
我正在尝试将我的NGINX配置文件(配置、ssl证书和其他)连接到AWS EKS(弹性Kubernetes服务)上的NGINX POD。在阅读本文时,我正在使用持久性卷和持久性卷声明,如后续教程()所示 我的场景是:我需要将在AWS EKS上附加带有持久性卷的NGINX配置文件,nginx,kubernetes-pod,amazon-eks,kubernetes-pvc,Nginx,Kubernetes Pod,Amazon Eks,Kubernetes Pvc,我正在尝试将我的NGINX配置文件(配置、ssl证书和其他)连接到AWS EKS(弹性Kubernetes服务)上的NGINX POD。在阅读本文时,我正在使用持久性卷和持久性卷声明,如后续教程()所示 我的场景是:我需要将/mnt/data上本地化的配置文件附加到NGINX POD中 持久卷: apiVersion: v1 kind: PersistentVolume metadata: name: task-pv-volume labels: type: local spec
/mnt/data
上本地化的配置文件附加到NGINX POD中
持久卷:
apiVersion: v1
kind: PersistentVolume
metadata:
name: task-pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/data"
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: task-pv-claim
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
apiVersion: v1
kind: Pod
metadata:
name: task-pv-pod
spec:
volumes:
- name: task-pv-storage
persistentVolumeClaim:
claimName: task-pv-claim
containers:
- name: task-pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: task-pv-storage
持久性卷声明:
apiVersion: v1
kind: PersistentVolume
metadata:
name: task-pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/data"
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: task-pv-claim
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
apiVersion: v1
kind: Pod
metadata:
name: task-pv-pod
spec:
volumes:
- name: task-pv-storage
persistentVolumeClaim:
claimName: task-pv-claim
containers:
- name: task-pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: task-pv-storage
NGINX吊舱:
apiVersion: v1
kind: PersistentVolume
metadata:
name: task-pv-volume
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/data"
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: task-pv-claim
spec:
storageClassName: manual
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
apiVersion: v1
kind: Pod
metadata:
name: task-pv-pod
spec:
volumes:
- name: task-pv-storage
persistentVolumeClaim:
claimName: task-pv-claim
containers:
- name: task-pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: task-pv-storage
在运行持久卷、持久卷声明和NGINX POD并使用/bin/bash
访问正在运行的NGINX POD之后,位于我的集群上/mnt/data
的数据应该位于/usr/share/NGINX/html
文件夹中,对吗?但是当我访问/usr/share/NGINX/html
文件夹中的NGINX pod时,我的/mnt/data
文件不在那里
我对发展还不熟悉,也许我错过了什么
谢谢 如果使用nginx映像创建pod,则映像创建的配置将覆盖pod中的现有文件,这也将反映在
/mnt/data
路径中
创建pod后,您必须使用pod.yml文件中的命令将配置文件移动到usr/share/nginx/html。您可以将
/mnt/data
映射到tmp文件夹,并在创建后使用命令将文件移动到usr/share/nginx/html
,因此每次创建新pod时,您的配置文件也会在所需路径中生成,我不理解您的答案,但是我上面的教程没有意义,对吗?因为我知道位于/mnt/data上的文件已插入POD上的/usr/share/nginx/html。