はじめに
開発環境でDockerを利用するようになり、すごく便利になった反面、稀にトラブルとドコを直せばいいのか小一時間ハマる事が良くあります。
今回はDocker上のphpMyAdminでdumpファイルのインポート中に「ファイルが大きすぎる」と怒られたのでその対処法です。
エラー内容
開発中に頻繁にdumpのインポート・エクスポートが必要になり、phpMyAdmin上からインポートしようとしたところ、以下のようなエラーが発生しました。
Warning: POST Content-Length of 14833022 bytes exceeds the limit of 2097152 bytes in Unknown on line 0
ファイルがデカすぎる、と。
そこまで大きなファイルを上げたわけじゃなかったんですが、インポートの最大サイズを確認したところ2048KiB(2MB)。。
さすがに小さすぎるので最大サイズを変更
アップロード可能なサイズの変更方法
確認したところ、以下に環境変数を渡す事で指定できるようです。
# cat /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}
date.timezone=${TZ}
docker-compose.yml に以下追加
image: phpmyadmin:latest
environment:
- MEMORY_LIMIT=256M
- UPLOAD_LIMIT=128M
コンテナを再起動して確認。
無事インポートできるファイルサイズの制限を引き上げる事ができました。