问题:最大上传文件大小:Google Kubernetes Wordpress中2 MB

时间:2019-01-07 20:14:42

标签: php wordpress google-kubernetes-engine

我部署了这个Wordpress kubernetes容器:https://console.cloud.google.com/marketplace/details/google/wordpress?project

但是我在Wordpress中上传主题时遇到问题。 上传的文件超出了php.ini中的upload_max_filesize指令。

我找不到文件:php.ini。在kubernetes的豆荚中。

我试图在Wordpress https://wordpress.org/plugins/php-settings/中使用插件来编辑php.ini,但是没有写文件。

有人可以帮助我逐步介绍如何修改容器的Yaml或其他解决方案吗?

3 个答案:

答案 0 :(得分:0)

您可以执行'kubectl get pods'列出容器,然后使用'kubectl exec -it [POD_NAME]-/ bin / bash'进入外壳。然后,您可以按照link中提到的方法更改值。

另一种选择是使用与此ConfigMap类似的自定义配置创建一个link,以增加上传文件的大小。

然后,您需要处理GKE工作负载,并且在“ StatefulSet”类型的“ wordpress-1-wordpress”工作负载中,您需要修改YAML文件,您可以在其中添加ConfigMap data to a Volume

另一个解决方法是,您可以重建在docker文件中使用的映像。

答案 1 :(得分:0)

根据here的建议,建议的方法是安装php config ini文件。公开它的最方便方法是使用Kubernetes ConfigMaps。请创建一个新的配置图:

apiVersion: v1
kind: ConfigMap
metadata:
  name: wp-php-config
  namespace: default
data:
  uploads.ini: |-
    file_uploads = On
    upload_max_filesize = 256M
    post_max_size = 256M
    memory_limit = 64M
    max_execution_time = 600

然后通过将以下配置添加到Pod spec.template.spec.containers中来将configMap作为pod中的一个卷公开:

... (wordpress container specs)
  volumeMounts:
    - mountPath: /usr/local/etc/php/conf.d/uploads.ini
      name: php-config
      subPath: uploads.ini

(...)

volumes:
  - configMap:
      defaultMode: 420
      name: wp-php-config
    name: php-config

您可能还需要调整您的入口最大上传限制。假设您使用的是nginx入口,请用注解修饰它:

nginx.ingress.kubernetes.io/proxy-body-size: 50m

如果您要将更改全局应用于入口,请搜索入口configMap并在其中添加设置。

答案 2 :(得分:0)

这是我解决该问题的方法:

  1. 我将这些行添加到了Dockerfile

    文件上传

    运行touch /usr/local/etc/php/conf.d/uploads.ini \ && echo“ file_uploads =在\ n \ max_execution_time = 600 \ n \ upload_max_filesize = 200M \ n \ post_max_size = 200M“ >> /usr/local/etc/php/conf.d/uploads.ini

  2. 在nginx-ingressdependencies.yml中,我在configmap中添加了这些“数据”参数,并且有效。

    种类:ConfigMap apiVersion:v1 元数据: 名称:nginx配置 命名空间:ingress-nginx 标签: app.kubernetes.io/名称:ingress-nginx app.kubernetes.io/part-of:ingress-nginx 数据: proxy-body-size:“ 200m” client-max-body-size:“ 200m”

  3. 之后,*kubectl apply -f ingress/dependencies.yml*和我能够上传2mb以上的视频。

尝试一下,看看它是否对您有用