【发布时间】:2021-07-10 01:05:56
【问题描述】:
我是 Kubernetes 的新手,尝试使用 Kubernetes pod 容器部署 WordPress 和 MySQL,但在运行 Kubernetes 时抛出错误“建立数据库连接时出错”。
mysql-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql-deployment
labels:
app: mysql
spec:
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql:5.7
ports:
- containerPort: 80
env:
- name: MYSQL_ROOT_PASSWORD
value: DEVOPS1
- name: MYSQL_USER
value: wpuser
- name: MYSQL_PASSWORD
value: DEVOPS12345
- name: MYSQL_DATABASE
value: wpdb
mysql-service.yaml
apiVersion: v1
kind: Service
metadata:
name: mysql-service
spec:
selector:
app: mysql
ports:
- protocol: TCP
port: 3306
targetPort: 3306
wordpress-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: wordpress-deployment
labels:
app: wordpress
spec:
replicas: 3
selector:
matchLabels:
app: wordpress
template:
metadata:
labels:
app: wordpress
spec:
containers:
- name: wordpress
image: wordpress
ports:
- containerPort: 80
env:
- name: WORDPRESS_DB_HOST
value: mysql-service
- name: WORDPRESS_DB_USER
value: wpuser
- name: WORDPRESS_DB_PASSWORD
value: wpdb
- name: WORDPRESS_DEBUG
value: "1"
wp-service.yaml
apiVersion: v1
kind: Service
metadata:
name: wordpress-service
spec:
type: NodePort
selector:
app: wordpress
ports:
- protocol: TCP
port: 80
targetPort: 80
我还在 Kubernetes 论坛上打开了相同的帖子。 Click Here查看
【问题讨论】:
-
您是否有更多关于为什么无法连接的诊断信息?您能否将 YAML 文件稍微缩减为 minimal reproducible example(例如,是否需要或什至使用 PersistentVolume;如果您内联主机名而不是通过 ConfigMap,您会得到相同的错误吗)?当
kubectl之类的命令写出纯文本输出时,您能否将其作为文本直接包含在问题中(而不是图像,而不是链接后面)? -
感谢@DavidMaze,根据您的建议。我更新了我的问题。请立即阅读。
标签: mysql wordpress amazon-web-services docker kubernetes