准备你的mysql-deployment.yml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mysql-pv-claim
labels:
app: wordpress
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql
spec:
selector:
matchLabels:
app: mysql
strategy:
type: Recreate
template:
metadata:
labels:
app: mysql
spec:
containers:
- image: mysql:5.6
name: mysql
env:
# 在实际中使用 secret
- name: MYSQL_ROOT_PASSWORD
value: password
ports:
- containerPort: 3306
name: mysql
volumeMounts:
- name: mysql-persistent-storage
mountPath: /var/lib/mysql
volumes:
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: mysql-pv-claim
运行文件:kubectl apply -f mysql-deployment.yml
可以测试下存储:
# 获取pod
kubectl get pods;
# 进入容器
kubectl exec -it 你的podID /bin/bin/bash
# 进入mysql 你的密码是password
mysql -p
# 创建数据库
create database qqx_db;
# 创建表
create table qqx_table (id int, name varchar(30));
# 插入数据
insert into qqx_table values (1, "qqx");
# 查看数据
select * from qqx_table;