Docker:PhpMyAdmin 的上传限制为 2048KiB

2022-01-05 00:00:00 docker yaml php apache phpmyadmin

我有一个看起来像这样的 docker-compose.yml:

i have a docker-compose.yml that looks like this:

webserver:
  build: ./_docker/php
  ports:
    - 80:80
  links:
    - mysql
  volumes_from:
    - app

mysql:
  image: mysql:5.7
  environment:
    MYSQL_DATABASE: "${DB_NAME}"
    MYSQL_USER: "${DB_USER}"
    MYSQL_ROOT_PASSWORD: "${DB_ROOT_PW}"
    MYSQL_PASSWORD: "${DB_PW}"
  volumes:
    - ./_docker/data/db:/docker-entrypoint-initdb.d
  volumes_from:
    - data

data:
  image: mysql:5.7
  volumes:
    - /var/lib/mysql
  command: "true"

phpmyadmin:
  image: phpmyadmin/phpmyadmin
  ports:
    - 8080:80
  links:
    - mysql
  environment:
    PMA_HOST: mysql

app:
  image: tianon/true
  volumes:
    - .:/var/www/public_html

Dockerfile 看起来像这样:

Dockerfile looks like this:

FROM php:7.0-apache
#php:7.2.2-apache
#php:5.6.33-apache

COPY php.ini /usr/local/etc/php/

COPY 000-default.conf /etc/apache2/sites-available/

RUN a2enmod rewrite
RUN a2enmod expires
RUN a2enmod headers

RUN apt-get update
RUN apt-get install -y zlib1g-dev libxml2-dev libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12.0 imagemagick
RUN docker-php-ext-install mysqli zip soap
RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/
RUN docker-php-ext-install gd

# Install opcache
RUN docker-php-ext-install opcache

和这样的 php ini:

and the php ini like this:

max_input_vars = 1500
max_execution_time = 300
post_max_size=50M
upload_max_filesize=50M

当我启动容器时,我的网络服务器位于 http://localhost.

when i start the container i have my webserver located on http://localhost.

我在里面放了一个带有 phpinfo();index.php,它显示 php.ini 可以工作.

i put an index.php with a phpinfo(); inside it and it shows, that the php.ini works.

当我打开 http://localhost:8080 并登录到 PMA 时,它显示我的上传限制设置为 2048KiB.

When i open http://localhost:8080 and login to PMA it shows me that my upload limit i set to 2048KiB.

在哪里可以更改?

提前致谢!

推荐答案

像这样在 docker 中使用 UPLOAD_LIMIT env.这是来自我的 docker-compose.yml.UPLOAD_LIMIT 的默认值为 2048K,即 2048KiB.将值设置为 300M 将增加到 300MiB.

Use like this UPLOAD_LIMIT env in docker. This is from my docker-compose.yml. Default value for UPLOAD_LIMIT is 2048K which is 2048KiB. Setting value to 300M increases it to 300MiB.

参考:https://github.com/phpmyadmin/docker#environment-variables-总结

 phpmyadmin:
    image: phpmyadmin/phpmyadmin
    container_name: 'php7.3-phpmyadmin'
    restart: 'always'
    links:
      - mysql
    environment:
      PMA_HOST: mysql
      PMA_PORT: 3306
      UPLOAD_LIMIT: 300M
    ports:
      - '8082:80'
    volumes:
      - /sessions

相关文章