尝试使用apache drupal image在Kubernetes上创建Drupal容器。Kubernetes持久性存储导致文件在容器内消失
当在/var/www/html
上安装持久性卷并使用docker exec -it <drupal-container-name> bash
检查Drupal容器时,没有可见的文件。因此不能提供文件。
工作流
1 - 创建谷歌计算磁盘
gcloud compute disks create --size=20GB --zone=us-central1-c drupal-1
2 - 新创建的谷歌计算磁盘注册到kubernetes群集实例
kubectl create -f gce-volumes.yaml
3 - 创建的Drupal荚
kubectl create -f drupal-deployment.yaml
个
定义文件都是从WordPress example启发,我drupal-deployment.yaml
:
apiVersion: v1
kind: Service
metadata:
name: drupal
labels:
app: drupal
spec:
ports:
- port: 80
selector:
app: drupal
tier: frontend
type: LoadBalancer
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: dp-pv-claim
labels:
app: drupal
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: drupal
labels:
app: drupal
spec:
strategy:
type: Recreate
template:
metadata:
labels:
app: drupal
tier: frontend
spec:
containers:
- name: drupal
image: drupal:8.2.3-apache
ports:
- name: drupal
containerPort: 80
volumeMounts:
- name: drupal-persistent-storage
mountPath: /var/www/html
volumes:
- name: drupal-persistent-storage
persistentVolumeClaim:
claimName: dp-pv-claim
而且gce-volumes.yaml
:
apiVersion: v1
kind: PersistentVolume
metadata:
name: drupal-pv-1
spec:
capacity:
storage: 20Gi
accessModes:
- ReadWriteOnce
gcePersistentDisk:
pdName: drupal-1
fsType: ext4
是什么造成的文件消失?我怎样才能成功地持续在容器内的/var/www/html
Drupal安装文件?