Skip to content

PHP config and libs missing from image 34.0.2.1, 'Memcache OC\\Memcache\\APCu not available' in logs #2591

Description

@n4dwxihyeyhes2

EDIT START:

The image nextcloud:34.0.2 is severely broken. Do not use!

EDIT END

Yesterday I upgraded my Nextcloud instance with docker compose pull and docker compose up -d and it started throwing errors in logs:

nextcloud-1  | [Tue Jul 28 04:58:34.404850 2026] [php:error] [pid 54:tid 54] [client 172.20.0.1:47012] PHP Fatal error:  
Uncaught OCP\\HintException: [0]: Memcache OC\\Memcache\\APCu not available for local cache 
(Is the matching PHP module installed and enabled?)\n\n  thrown in /var/www/html/lib/private/Memcache/Factory.php on line 77

This is my docker-compose.yaml:

services:
  nextcloud:
    image: nextcloud
    ports:
      - "40004:80"
    restart: always
    external_links:
      - mysql:mysql
    volumes:
      - /var/lib/nextcloud:/var/www/html
    networks:
      - common

networks:
  common:
    external: true

This is version.php from the container:

<?php 
$OC_Version = array(34,0,2,1);
$OC_VersionString = '34.0.2';
$OC_Edition = '';
$OC_Channel = 'stable';
$OC_VersionCanBeUpgradedFrom = array (
  'nextcloud' => 
  array (
    '33.0' => true,
    '34.0' => true,
  ),
  'owncloud' => 
  array (
    '10.13' => true,
    '10.14' => true,
    '10.15' => true,
    '10.16' => true,
  ),
);
$OC_Build = '2026-07-23T12:23:26+00:00 1a0ccac96f9b4a0682c60eac550c0eb03294626b';
$vendor = 'nextcloud';

I noticed that all ini files in /usr/local/etc/php/conf.d/ except docker-php-ext-sodium.ini are empty:

-rw-r--r-- 1 root root  0 Jul 23 23:08 docker-php-ext-apcu.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-bcmath.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-exif.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-ftp.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-gd.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-gmp.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 docker-php-ext-igbinary.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 docker-php-ext-imagick.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-intl.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-ldap.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 docker-php-ext-memcached.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-pcntl.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-pdo_mysql.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-pdo_pgsql.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 docker-php-ext-redis.ini
-rw-r--r-- 1 root root 17 Jul 14 01:28 docker-php-ext-sodium.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-sysvsem.ini
-rw-r--r-- 1 root root  0 Jul 23 23:07 docker-php-ext-zip.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 nextcloud.ini
-rw-r--r-- 1 root root  0 Jul 23 23:08 opcache-recommended.ini

Don't know if that's OK or not. However, after I added

extension=apcu.so
apc.enabled=1
apc.enable_cli=1

to docker-php-ext-apcu.ini I started getting a different error in container logs:

nextcloud-1  | Warning: PHP Startup: Unable to load dynamic library 'apcu.so' 
(tried: /usr/local/lib/php/extensions/no-debug-non-zts-20250925/apcu.so 
(/usr/local/lib/php/extensions/no-debug-non-zts-20250925/apcu.so: file too short), 
/usr/local/lib/php/extensions/no-debug-non-zts-20250925/apcu.so.so 
(/usr/local/lib/php/extensions/no-debug-non-zts-20250925/apcu.so.so: cannot open shared object file: No such file or directory))
 in Unknown on line 0

The contents of /usr/local/lib/php/extensions/no-debug-non-zts-20250925/ explains the file too short message:

-rw-r--r-- 1 root root      0 Jul 23 23:08 apcu.so
-rwxr-xr-x 1 root root      0 Jul 23 23:07 bcmath.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 exif.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 ftp.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 gd.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 gmp.so*
-rw-r--r-- 1 root root      0 Jul 23 23:08 igbinary.so
-rw-r--r-- 1 root root      0 Jul 23 23:08 imagick.so
-rwxr-xr-x 1 root root      0 Jul 23 23:07 intl.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 ldap.so*
-rw-r--r-- 1 root root      0 Jul 23 23:08 memcached.so
-rwxr-xr-x 1 root root      0 Jul 23 23:07 pcntl.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 pdo_mysql.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 pdo_pgsql.so*
-rw-r--r-- 1 root root      0 Jul 23 23:08 redis.so
-rwxr-xr-x 1 root root 113944 Jul 14 01:28 sodium.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 sysvsem.so*
-rwxr-xr-x 1 root root      0 Jul 23 23:07 zip.so*

I cannot use previous Nextcloud image to compare because of the downgrade prevention mechanism.

I cannot paste output from ./occ config:list system because I get error

An unhandled exception has been thrown:
OCP\HintException: [0]: Memcache OC\Memcache\Redis not available for distributed cache (Is the matching PHP module installed and enabled?)

My config.php:

$CONFIG = array (
  'instanceid' => '[redacted]',
  'passwordsalt' => '[redacted]',
  'datadirectory' => '/var/www/html/data',
  'dbtype' => 'mysql',
  'version' => '34.0.1.2',
  'installed' => true,
  'maxZipInputSize' => 838860800,
  'allowZipDownload' => true,
  'theme' => '',
  'maintenance' => false,
  'ldapIgnoreNamingRules' => false,
  'loglevel' => 0,
  'preview_libreoffice_path' => '/usr/bin/libreoffice',
  'enable_previews' => true,
  'trusted_domains' => 
  array (
    0 => '[redacted]',
  ),
  'dbname' => 'owncloud',
  'dbhost' => 'mysql',
  'dbuser' => 'owncloud',
  'dbpassword' => '[redacted]',
  'secret' => '[redacted]',
  'trashbin_retention_obligation' => 'auto',
  'updatechecker' => false,
  'filelocking.enabled' => true,
  'memcache.locking' => '\\OC\\Memcache\\Redis',
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'memcache.distributed' => '\\OC\\Memcache\\Redis',
  'redis' => 
  array (
    'host' => '[redacted]',
    'port' => 6379,
    'timeout' => 0,
  ),
  'ldapProviderFactory' => '\\OCA\\User_LDAP\\LDAPProviderFactory',
  'overwrite.cli.url' => '[redacted]',
  'mail_from_address' => 'nextcloud',
  'mail_smtpmode' => 'smtp',
  'mail_sendmailmode' => 'smtp',
  'mail_domain' => '[redacted]',
  'mail_smtphost' => '[redacted]',
  'trusted_proxies' => 
  array (
    0 => '172.20.0.1',
  ),
  'overwritehost' => '[redacted]',
  'overwriteprotocol' => 'https',
  'overwritewebroot' => '/',
  'mysql.utf8mb4' => true,
  'default_phone_region' => 'PL',
  'bulkupload.enabled' => false,
  'csrf.optout' => 
  array (
    0 => '/^.*nextcloudcmd.*/',
    1 => '/^.*Nextcloud.*/',
),
);

I run Nextcloud container on a Debian 13.6 system.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions