无法在Joomla docker官方容器中更改PHP变量

时间:2016-04-05 11:16:00

标签: php joomla docker

我正在使用joomla官方docker容器。问题是我需要安装组件但收到以下错误消息:

  

最大PHP文件上传大小太小:这是在php.ini中设置的   PHP的upload_max_filesize和post_max_size设置   设置

我知道我必须编辑这个PHP变量才能安装组件。我不知道php.ini文件在哪里。我已经运行了C函数并获取了

中php配置文件的路径
            int totalPages = 0;
            int totalElements = listA.size() + listB.size() + listC.size();
            if(totalElements % PAGE_SIZE == 0) {
                totalPages = totalElements / PAGE_SIZE;
            }else {
                totalPages = (totalElements / PAGE_SIZE) + 1;
            }


            Map<Integer, List<List<ParentObject>>> paginatedMap = new HashMap<Integer, List<List<ParentObject>>>();
            for(int i=0; i<totalPages; i++) {
                List<List<ParentObject>> list = new LinkedList<List<ParentObject>>();
                List<ObjectA> subListA = new LinkedList<ObjectA>();
                List<ObjectB> subListB = new LinkedList<ObjectB>();
                List<ObjectC> subListC = new LinkedList<ObjectC>();
                int total = 0;

                if(total <= PAGE_SIZE) {
                    subListA.addAll(listA.subList(0, (PAGE_SIZE-total)-1));
                    listA.removeAll(listA.subList(0, (PAGE_SIZE-total)-1));
                    total = total + subListA.size();
                }

                if(total <= PAGE_SIZE) {
                    subListB.addAll(listB.subList(0, (PAGE_SIZE-total)-1));
                    listB.removeAll(listB.subList(0, (PAGE_SIZE-total)-1));
                    total = total + subListB.size();
                }

                if(total <= PAGE_SIZE) {
                    subListC.addAll(listC.subList(0, (PAGE_SIZE-total)-1));
                    listC.removeAll(listC.subList(0, (PAGE_SIZE-total)-1));
                    total = total + subListC.size();
                }

                list.add(subListA);
                list.add(subListB);
                list.add(subListC);
                paginatedMap.put(i, list);
            }

问题是没有php.ini文件。

如何更改这些PHP变量?如何在官方joomla docker容器中找到PAGE_SIZE文件?

2 个答案:

答案 0 :(得分:4)

您必须提供自己的php.ini文件,并将其作为卷加载到容器中。 为此,请将以下标志添加到docker run命令:

-v local/path/to/php.ini:/usr/local/etc/php/php.ini

如果您使用的是docker compose,请将joomla容器定义的卷部分更新为:

joomla_container:
    ...
    volumes:
      ...
      - local/path/to/php.ini:/usr/local/etc/php/php.ini

您绝对不应该尝试在正在运行的容器中编辑配置。如果您这样做,则在更新实例时会丢失更改。

答案 1 :(得分:1)

LOADED 配置文件中是否有路径? 例如,我的是:

Configuration File (php.ini) Path   C:\Windows
Loaded Configuration File   C:\Windows\php.ini