Hướng dẫn nextcloud docker php memory limit - nextcloud docker php giới hạn bộ nhớ

Xin chào tất cả các nhà phát triển và người dùng DOCKER NEXTCLOUD thân mến!

Tôi có một vấn đề đang khiến tôi phát điên. Tôi đã cố gắng tăng bộ nhớ_limit cho PHP trong nhiều ngày nhưng tôi không thể làm cho nó hoạt động.

Những gì tôi nhận được trong nhật ký: Allowed memory size of 536870912 bytes exhausted (tried to allocate 16384 bytes) at /var/www/html/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php#117
Allowed memory size of 536870912 bytes exhausted (tried to allocate 16384 bytes) at /var/www/html/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php#117

Những gì tôi đã tìm thấy/thử:

  1. Nếu tôi chạy Docker Exec-Người sử dụng www-data nextcloud-app php -i | grep memory_limit tôi nhận được 512MBdocker exec --user www-data nextcloud-app php -i | grep memory_limit I get 512MB
  2. Nếu tôi chạy docker exec-người sử dụng www-data nextcloud-app php -ini tôi nhận được tất cả các cài đặt và, một lần nữa, tôi có thể xem 512MB là giới hạn bộ nhớdocker exec --user www-data nextcloud-app php -ini I get all the settings and, again, I can see 512MB as memory limit
  3. Tôi đã thử chỉnh sửa các tệp sản xuất php.ini, một vài trong số chúng có thể được tìm thấy theo/var/lib/docker/overlay2/ - mà tôi có thể không nên gặp vấn đề khi cố gắng lưu thùng chứa của mình, nhưng nó không thực sự quan trọng vì tôi chỉ có thể tải xuống một cái mới nếu tôi cần
  4. Tôi đã thử chỉnh sửa tệp .htaccess, cả hai (được tìm thấy trong khối lượng Docker và Under/home/app/)
  5. Tôi đã thử chỉnh sửa người dùng.ini

Không có gì đã làm việc. Nếu ai đó có một giải pháp cho việc này, tôi sẽ gửi cho bạn một loại bia ảo hoặc mua IRL của riêng bạn nếu bạn không quá xa.

Cảm ơn lớn trước!

Vấn đề mới

Có một câu hỏi về dự án này? Đăng ký một tài khoản GitHub miễn phí để mở một vấn đề và liên hệ với người bảo trì và cộng đồng của nó. Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Bằng cách nhấp vào Đăng ký đăng ký cho GitHub, bạn đồng ý với Điều khoản dịch vụ và tuyên bố quyền riêng tư của chúng tôi. Chúng tôi thỉnh thoảng gửi cho bạn các email liên quan đến tài khoản.

Đã có trên Github? đăng nhập vào tài khoản của bạn

Đóng

BitDegree67 đã mở vấn đề này

Ngày 6 tháng 9 năm 2018

· 15 bình luận

Bình luận

Xin chào, tôi đang sử dụng hình ảnh mới nhất (với NextCloud 14) và khi tôi chạy bất kỳ lệnh OCC PHP nào. Tôi nhận được tin nhắn này The current PHP memory limit is below the recommended value of 512MB. Tôi không chạm vào hình ảnh. Đó là hình ảnh chính thức từ Docker Hub Vanilla (với cài đặt sạch cho Mariadb)
and when i run any php occ command. i get this message
The current PHP memory limit is below the recommended value of 512MB.
i haven't touch the image. it's the official image from docker hub vanilla (with clean installation to mariadb)

Đó là một ý tưởng tốt để PR này? Chạy echo 'memory_limit = 512m' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini; trong Dockerfile của NC14?
RUN echo 'memory_limit = 512M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini;
in Dockerfile of NC14 ?

Chindvn89, Archy-in, Gcrochemore, E-mage, Khaledalam, Denyspishchenko, Martijndwars, Panique, Bariscodes, Pictor13 và 3 phản ứng khác với ngón tay cái lên

Hướng dẫn nextcloud docker php memory limit - nextcloud docker php giới hạn bộ nhớ

Điều này đã được đặt trong .htaccess.user.ini. Bạn đã sửa đổi chúng chưa? Bạn cũng có thể gắn một cấu hình tùy chỉnh vào /usr/local/etc/php.
You can also mount a custom config into /usr/local/etc/php.

Xin chào, tôi có cùng một vấn đề, giới hạn PHP là 128 (php -i | grep memory_limit) các giá trị trong .htacess và user.ini được đặt thành 512
i have the same problem ,
the php limit is to 128 (php -i | grep memory_limit)
the values in .htacess and user.ini are set to 512

@J0wi Không, như tôi đã nói. Tôi vừa chạy Docker Run NextCloud và sau đó trong lần chạy NextCloud mới này
docker run nextcloud
and then in this new nextcloud run "php occ" then i get the message of warning 128MB

@BitDegree67 Bạn có thể thay đổi nó với echo 'memory_limit = 512M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini; bên trong thùng chứa Docker nhưng tôi nghĩ nó tạm thời và hacky
You can change it with
echo 'memory_limit = 512M' >> /usr/local/etc/php/conf.d/docker-php-memlimit.ini;
inside the docker container
but i think its temporary and hacky

B09dan, Aibmakesense, Ylaido, Daverdalas, Evgeniy-Bondarenko, Programmador, Ghericsantiago, D-Luk, Alexandr-Shevchenko và sergheii đã phản ứng với biểu tượng cảm xúc trái tim

Xin chào, tôi có cùng một vấn đề, một người có thể mắc kẹt nó. cảm ơn.
i have the same problem ,someone who can slove it. thanks.

Cảm ơn vì đã cung cấp các chi tiết. Bây giờ tôi có thể tái tạo vấn đề. @Tilosp Vì điều này đã được thêm vào NextCloud/Server#10539 (NC 14), chúng ta có nên thay đổi mặc định cho container không?
@tilosp since this has been added in nextcloud/server#10539 (NC 14), should we change the defaults for the container?

Câu hỏi là tại sao .htaccess không được sử dụng bởi "PHP OCC"

Bởi vì đó là CLI và không phải Apache

Được rồi! Vì vậy, đó không phải là vấn đề đối với NextCloud, chỉ dành cho OCC

@BitDegree67 Nó rõ ràng vẫn là một vấn đề với biến thể PHP-FPM. Giải pháp hiện tại của tôi là có Dockerfile có nguồn gốc của riêng tôi, điều này chỉ đơn giản là làm tăng giới hạn MEM, nhưng tôi nghĩ điều này thực sự nên được đưa vào thượng nguồn (PHP-FPM và Alps Alt).

EDIT: Tôi vừa nhận ra rằng cấu hình giới hạn bộ nhớ cũng có mặt trong .user.ini, nhưng bằng cách nào đó NextCloud vẫn phàn nàn.

J0WI đã thêm một cam kết cho J0WI/Docker-nextcloud đã tham khảo vấn đề này

Ngày 12 tháng 9 năm 2018

Có hai kiểm tra khác nhau trong NextCloud:

  • Một là trong trang cài đặt, được phục vụ thông qua Apache hoặc PHP-FPM và sử dụng .htaccess hoặc .user.ini
  • Một cái khác nằm trong ____10 CLI sử dụng (kể từ NextCloud 14), sử dụng mặc định PHP

Bạn luôn có thể gắn một tệp Allowed memory size of 536870912 bytes exhausted (tried to allocate 16384 bytes) at /var/www/html/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php#1171 tùy chỉnh, có chứa ví dụ: Allowed memory size of 536870912 bytes exhausted (tried to allocate 16384 bytes) at /var/www/html/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php#1172, vào Allowed memory size of 536870912 bytes exhausted (tried to allocate 16384 bytes) at /var/www/html/3rdparty/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php#1173. Tôi đã tạo #460 để gửi cài đặt này theo mặc định.
I've created #460 to ship this setting by default.

Maxbo đã thêm một cam kết với Gertzgutscheruemenapp/Docker-NextCloud đã đề cập đến vấn đề này

Ngày 10 tháng 11 năm 2018

Set PHP memory limit to the recommended value of 512 MB using a custom configuration
see nextcloud/docker#447

Điều này đã được tham chiếu

Ngày 10 tháng 11 năm 2018

Giới hạn bộ nhớ PHP tối đa là gì?

Theo mặc định, tập lệnh PHP có thể phân bổ tối đa 128 megabyte bộ nhớ.Để xác minh giá trị hiện tại của Chỉ thị Memory_Limit và các chỉ thị khác, bạn có thể sử dụng hàm phpinfo ().128 megabytes of memory. To verify the current value of the memory_limit directive and other directives, you can use the phpinfo() function.

Dữ liệu NextCloud được lưu trữ ở đâu?

Docker Daemon sẽ lưu trữ dữ liệu đó trong thư mục Docker/var/lib/docker/tập/....Điều đó có nghĩa là dữ liệu của bạn được lưu ngay cả khi các container gặp sự cố, bị dừng hoặc xóa.Một tập docker có tên hoặc thư mục máy chủ được gắn nên được sử dụng để nâng cấp và sao lưu./var/lib/docker/volumes/... . That means your data is saved even if the container crashes, is stopped or deleted. A named Docker volume or a mounted host directory should be used for upgrades and backups.

Làm cách nào để nâng cấp Docker NextCloud?

Cách đúng để nâng cấp NextCloud trên Docker là gì ?..
Xây dựng lại container docker ..
Bắt đầu container mới ..
Mở NextCloud trong trình duyệt ..
Quan sát màn hình chế độ bảo trì ..