Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何在kubernetes中部署multi-wordpress?_Mysql_Wordpress_Kubernetes - Fatal编程技术网

Mysql 如何在kubernetes中部署multi-wordpress?

Mysql 如何在kubernetes中部署multi-wordpress?,mysql,wordpress,kubernetes,Mysql,Wordpress,Kubernetes,我尝试在kubernetes中部署wordpress/mysql。 我希望mysql和wordpress使用不同的卷。我正在尝试为wordpress编写nfs,为mysql编写hostpath 但是wordpress和mysql没有连接。我不知道为什么。谢谢你的帮助 这是我的密码: Mysql.yaml apiVersion: v1 kind: Pod metadata: name: mysql labels: app: mysql spec: containers: -

我尝试在kubernetes中部署wordpress/mysql。 我希望mysql和wordpress使用不同的卷。我正在尝试为wordpress编写nfs,为mysql编写hostpath

但是wordpress和mysql没有连接。我不知道为什么。谢谢你的帮助

这是我的密码: Mysql.yaml

apiVersion: v1
kind: Pod
metadata:
  name: mysql
  labels:
    app: mysql
spec:
  containers:
  - name: mysql
    image: mysql:5.7
    ports:
    - containerPort: 3306
      protocol: TCP
    env:
    - name: MYSQL_ROOT_PASSWORD
      value: qwer1234
    volumeMounts:
      - name: mysql-volume
        mountPath: /var/lib/mysql
  volumes:
      - name: mysql-volume
        persistentVolumeClaim:
          claimName: mysql-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: mysql-svc
  labels:
    app: mysql
spec:
  type: ClusterIP
  selector:
    app: mysql
  ports:
    - protocol: TCP
      port: 3306
      
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-pvc
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
  volumeName: mysql-pv
​
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: mysql-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: /vol/mysql

wordpress.yaml

apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: wordpress
  labels:
    app: wordpress
spec:
  replicas: 2
  selector:
    matchLabels:
      app: wordpress
  template:
    metadata:
      labels:
        app: wordpress
    spec:
      containers:
      - image: wordpress
        name: wordpress
        env:
        - name: WORDPRESS_DB_HOST
          value: mysql:3306
        - name: WORDPRESS_DB_PASSWORD
          value: P@ssw0rd
        volumeMounts:
        - mountPath: /nfs-volume/html
          name: wordpress-pv
        ports:
          - protocol: TCP
            containerPort: 80
      volumes:
      - name: wordpress-pv
        persistentVolumeClaim:
          claimName: wordpress-pvc
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: wordpress-pvc
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 5Gi
  volumeName: wordpress-pv
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: wordpress-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  nfs:
    server: 192.168.201.11
    path: /nfs-volume
---
apiVersion: v1
kind: Service
metadata:
  name: wordpress-svc
  labels:
    app: wordpress
spec:
  type: LoadBalancer
  selector:
    app: wordpress
  ports:
    - protocol: TCP
      port: 80

您最后在环境变量中提供了端口号

请试一试

env:
        - name: WORDPRESS_DB_HOST
          value: mysql:3306
用这个代替

env:
        - name: WORDPRESS_DB_HOST
          value: MySQL
您可以在以下位置查看示例:

如果您阅读了Docker image的文档,那么它们也提供了主机名,而没有端口作为值

同样在Wordpress环境中,您必须传递错误的MySQL密码

- name: WORDPRESS_DB_PASSWORD
          value: P@ssw0rd
应该是这样

- name: WORDPRESS_DB_PASSWORD
          value: qwer1234

你好,谢谢你的建议。但它仍然不起作用。我尝试连接192.168.201.200:30687此ip。但是它没有显示任何东西..啊,我修复了wordpress密码和mysql密码。现在它们都是一样的。一旦尝试直接打开负载平衡器IP而不检查端口80,就会显示“建立数据库连接时出错”,因此我检查了有关mysql的日志。[注意]用户'root'@'10.233.120.57'(使用密码:否)的访问被拒绝,我使用'kubectl descripe mysql'命令查看可能发生的情况,`/var/run/secrets/kubernetes.io/serviceCount from default-token-swz8d(ro)卷:mysql卷:Type:PersistentVolumeClaim(对同一名称空间中PersistentVolumeClaim的引用)default-token-swz8d:Type:SecretName:default-token-swz8d不是服务帐户的原因吗?好的!!!!我做到了!!!!!!!!!!!!!我猜它是由nfs文件系统引起的。我在这个sudo vi/etc/exports/nfs卷*(rw,sync,no_subtree_check)sudo mkdir/nfs volume sudo chmod-R 777/nfs volume sudo exportfs-arv和success!谢谢你!反对什么?这是一个很好的操作员/ui来管理你的安装。不需要困难的和自定义的安装。