k8s集群中部署wordpress,请写出yaml文件
时间: 2023-06-02 21:08:09 浏览: 115
kube-prometheus-release-0.12部署yaml文件
请见下方的 Kubernetes YAML 文件:
```
apiVersion: v1
kind: Service
metadata:
name: wordpress-service
spec:
selector:
app: wordpress
ports:
- name: wordpress-port
port: 80
targetPort: 80
type: LoadBalancer
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: wordpress-deployment
spec:
selector:
matchLabels:
app: wordpress
replicas: 2
template:
metadata:
labels:
app: wordpress
spec:
containers:
- name: wordpress
image: wordpress:latest
env:
- name: WORDPRESS_DB_HOST
value: mysql:3306
- name: WORDPRESS_DB_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-secret
key: password
ports:
- name: wordpress-port
containerPort: 80
volumeMounts:
- name: wordpress-persistent-storage
mountPath: /var/www/html
volumes:
- name: wordpress-persistent-storage
emptyDir: {}
```
这个 YAML 文件会:
1. 创建一个 Service 对象,将 WordPress 后端服务暴露在端口 80 上。
2. 创建一个 Deployment 对象,用于部署 WordPress 应用程序。它会定义两个副本,每个副本使用 WordPress 官方 Docker 镜像运行一个容器。
3. 每个 WordPress 容器都会从 mysql-secret 密钥中获取 MySQL 密码,并将其存储在环境变量 WORDPRESS_DB_PASSWORD 中。
4. WordPress 容器将使用名称为 wordpress-persistent-storage 的预定义空目录作为持久存储卷。此存储卷用于存储 WordPress 文件和证书。
阅读全文