これはなに
- Docker 版 nextcloud を構築していた際に nextcloud 側で設定されている
PHP_UPLOAD_LIMITの上限に引っかかってしまい、設定を上書きをするために簡単に調査したのでまとめました
デフォルトの設定
memory_limit upload_max_filesize post_max_size ともにデフォルト値は 512M です
設定方法
以前は php.ini を作成し公式イメージをベースに Dockerfile を記述していましたが、 ENV を渡せば php.ini が条件に沿って自動生成されるように変更されていました。
memory_limit の設定を行いたい場合は PHP_MEMORY_LIMIT に 1024M 等の値を渡します。
upload_max_filesize post_max_size の設定を行いたい場合は PHP_UPLOAD_LIMIT に同様に 1024M 等の値を設定します。
Dockerfile に直接記述する場合は以下のように
FROM nextcloud:apache
ENV PHP_MEMORY_LIMIT=1024M
ENV PHP_UPLOAD_LIMIT=1024M
docker-compose 等に以下のように記述しても 🆗 です。
※ 不要な db の記述は削除しています
version: '2'
volumes:
nextcloud:
services:
app:
image: nextcloud
restart: always
ports:
- 8080:80
links:
- db
volumes:
- nextcloud:/var/www/html
environment:
- MYSQL_PASSWORD=
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_HOST=db
- PHP_MEMORY_LIMIT=1024M
- PHP_UPLOAD_LIMIT=1024M
Reference