当前位置: 首页 > 知识库问答 >
问题:

具有自定义php.ini文件设置的Docker Wordpress容器

帅令雪
2023-03-14

我在Docker容器中运行Wordpress(以及PHPMyAdmin和MySQL),我需要进行更改以增加PHPMyAdmin的最大可上传文件大小

我研究了许多解决方案,发现了一个建议,创建一个定制的uploads.ini文件,然后将该文件包含在docker compose文件中。

所以我有这个:

uploads.ini

file_uploads = On
memory_limit = 64M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 600

docker-compose.yml

version: '3'

services:
  # Database
  db:
    image: mysql:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
    networks:
      - wpsite
  # phpmyadmin
  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    restart: always
    ports:
      - '8080:80'
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: password 
    networks:
      - wpsite
  # Wordpress
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - '8000:80'
    restart: always
    volumes:
      - './:/var/www/html'
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
    networks:
      - wpsite
networks:
  wpsite:
volumes:
  db_data:

我已将uploads.ini文件包含在中,用于wordpress

volumes:
      - './:/var/www/html'
      - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini

但是可悲的是,在运行docker-comment并打开localhost:8080转到PHPMyAdmin后,我仍然只有2m的最大文件上传大小,而不是我自定义文件中的64m

共有3个答案

阙辰龙
2023-03-14

您可以通过ENV变量将上传限制传递给phpmyadmin docker容器

实例

phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: phpmyadmin
depends_on:
  - mysql
environment:
  - UPLOAD_LIMIT=512M
  - PMA_HOST=mysql
  - PMA_PORT=3306
  - PMA_ARBITRARY=1
ports:
  - "8888:80"
司寇烨伟
2023-03-14

你可以试着重建你的形象,但是像这样。将此添加到Dockerfile中的某个地方。这样你就可以确定这不是某种许可问题(我认为是)

  COPY ./uploads.ini /usr/local/etc/php/conf.d
惠志
2023-03-14

你想增加最大可上传文件大小的PHPMyAdmin,但uploads.ini你添加你的wordpress容器)

为phpmyadmin容器添加卷,您会很高兴=)

# phpmyadmin
phpmyadmin:
depends_on:
  - db
image: phpmyadmin/phpmyadmin
volumes:
 - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
restart: always
ports:
  - '8080:80'
environment:
  PMA_HOST: db
  MYSQL_ROOT_PASSWORD: password 
networks:
  - wpsite
 类似资料:
  • 是否可以加载自定义文件。ini文件,它覆盖了繁杂的php。分发包中的ini? 在unix系统上,我相信这可以通过在中放入额外的ini文件来实现,但我不确定IIS。 问题很简单:我可以定义一个额外的文件,用于添加或重载标准设置,例如: 位于中,是加载的配置文件<代码>myphp。ini是我的自定义配置 在哪里放置i,以便加载和,并且在? 是否有“扫描此目录以获取更多信息”。Windows下的ini文

  • 问题内容: 我正在尝试通过访问文件并更改默认的PHP时区为 至 但是,当我尝试在下查看当前时区时,时区跟随时区。 我尝试停止并重新启动Apache服务器,但是似乎并没有更改设置。 在此过程中我缺少什么吗? PS:我正在XAMPP下使用PHP 5.6.8。 问题答案: 我尝试了发布的所有其他可能的解决方案,但是都没有帮助。这是帮助我保存时区设置的原因: 1)转到页面并搜索并打开该部分下提到的文件。

  • 问题内容: 是否可以使用Java邮件在IMAP邮件上设置自定义标志,而不会覆盖现有标志?例如,我需要在已处理的邮件上设置一个“已处理”标志,而不必将其状态更改为“已查看/已删除”,或者邮件客户端不会干扰此“已处理”标志。 然后,我需要找到所有不具有“已处理”标志的邮件并对其进行处理,然后将它们也标记为“已处理”。 谢谢! 问题答案: 并非所有的IMAP服务器都将支持这些“用户标志”,但大多数都将支

  • 介绍: 现在基于css font-face的字体图标越来越流行。 这种图标具有矢量图的特点,可以不失真的自由缩放,还可以通过css来设置图标的颜色,还有就是网络上资源特别丰富。X5系统自带了数百个字体图标, 用户还可以通过配置使用自己下载的字体图标, 下边就介绍一下具体的使用方法。 首先以fortawesome 网站为例(网址:http://fortawesome.github.io/Font-A

  • 介绍: 现在基于css font-face的字体图标越来越流行。 这种图标具有矢量图的特点,可以不失真的自由缩放,还可以通过css来设置图标的颜色,还有就是网络上资源特别丰富。X5系统自带了数百个字体图标, 用户还可以通过配置使用自己下载的字体图标, 下边就介绍一下具体的使用方法。 首先以fortawesome 网站为例(网址:http://fortawesome.github.io/Font-A

  • 所以,我有两个类,一个是和。observable有一个,该变量被更改,当它被更改时,事件将被激发,它的方法将该char变量作为参数传递。 一切工作都很好,char变量存在于观察者中,但JLabel似乎不会更新文本。我试过使用,但没有成功。还尝试在JLabel上使用,它出现了一小会,然后就消失了。 我想做的很简单: 我已经意识到这是JLabel的问题,所以我尝试在JLabel上使用,但仍然没有成功。