WEB/システム/IT技術ブログ

DockerのphpMyAdmin環境のupload_max_filesizeを変更する

DockerでphpMyAdminの環境を構築し、DBに10M程度のデータをインポートしようとしたのですが、以下のエラーが発生しました。

Warning: POST Content-Length of xxxxxxx bytes exceeds the limit of xxxxxxx bytes in Unknown on line 0

アップロードしようとしたファイル容量が、PHP設定の上限を超えてるようです。

この場合、PHPの以下の設定項目を調整すればよいのですが、、

  • memory_limit
  • post_max_size
  • upload_max_filesize

過去記事を参考にphp.iniを設置してみますが、なかなかコンテナに設定が反映されません。
phpMyAdminなどPHPシステムで扱えるファイルの最大サイズを変更する

コンテナに接続して設定ファイルの構成を調べてみると、どうやらファイル「/usr/local/etc/php/conf.d/phpmyadmin-misc.ini」で設定しているようです。
ファイルの中身は以下のとおりです。環境変数が用意されています。

allow_url_fopen=Off
max_execution_time=${MAX_EXECUTION_TIME}
max_input_vars=10000
memory_limit=${MEMORY_LIMIT}
post_max_size=${UPLOAD_LIMIT}
upload_max_filesize=${UPLOAD_LIMIT}

そこで、docker-compose.ymlで環境変数を設定します。(要点を除いて省略しています)

services:
  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    environment:
      MEMORY_LIMIT: 128M
      UPLOAD_LIMIT: 64M

コンテナを再起動して、ファイル上限が64Mに変更できました。
無事、DBに10Mのデータをインポートする事ができました。

B!

Comment

コメントはありません

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Monthly Archives