Skip to content

[BUG] High CPU usage after container update #536

@Elbullazul

Description

@Elbullazul

Is there an existing issue for this?

  • I have searched the existing issues

Current Behavior

After Watchtower updates the container, it progressively starts using more and more CPU until requests start failing for lack of resources. On Grafana, it looks like this (auto-updates are set for 2:00 AM):

Image

Expected Behavior

The container should update without exhausting CPU resources afterwards

Steps To Reproduce

  1. Enable auto-updates with Watchtower and wait for an update to occur
  2. After updating, the container's CPU usage increases until it exhausts available resources

Environment

- OS: Debian Trixie
- How docker service was installed: Docker's install script

CPU architecture

x86-64

Docker creation

services:
  nextcloud:
    image: lscr.io/linuxserver/nextcloud:latest
    container_name: nextcloud
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=America/Toronto
    volumes:
      - ${BINDS}/nextcloud/config:/config
      - ${BINDS}/nextcloud/data:/data
    depends_on:
      nextcloud-db:
        condition: service_healthy
      nextcloud-cache:
        condition: service_healthy
    restart: unless-stopped
    networks:
      - backend
      - proxy_nextcloud
    labels:
      com.centurylinklabs.watchtower.enable: true
      com.centurylinklabs.watchtower.depends-on: "/nextcloud-db, /nextcloud-cache"

  nextcloud-db:
    image: postgres:17
    container_name: nextcloud-db
    volumes:
      - ${BINDS}/nextcloud/pgdb:/var/lib/postgresql/data
    environment:
      POSTGRES_DB: ${DB_NAME}
      POSTGRES_USER: ${DB_USER}
      POSTGRES_PASSWORD: ${DB_PASS}
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -d ${DB_NAME} -U ${DB_USER}"]
      interval: 10s
      timeout: 5s
      retries: 5
    restart: unless-stopped
    networks:
      - backend
    labels:
      com.centurylinklabs.watchtower.enable: true

  nextcloud-cache:
    image: redis:alpine
    container_name: nextcloud-cache
    environment:
      - TZ=$TIMEZONE
      - PUID=1000
      - PGID=1000
    volumes:
      - cache:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 60s
      timeout: 20s
      retries: 5
    restart: unless-stopped
    networks:
      - backend
    labels:
      com.centurylinklabs.watchtower.enable: true

volumes:
  cache:

networks:
  backend:
  proxy_nextcloud:
    external: true

Container logs

[migrations] started
[migrations] 01-nginx-site-confs-default: skipped
[migrations] 02-default-location: skipped
[migrations] done
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1000
User GID:    1000
───────────────────────────────────────
Linuxserver.io version: 33.0.0-ls418
Build-date: 2026-02-18T13:49:46+00:00
───────────────────────────────────────
    
using keys found in /config/keys
Initializing nextcloud 33.0.0.16 (this can take a while) ...
Upgrading nextcloud from 32.0.6.1 ...
Setting permissions
Setting log level to debug
Turned on maintenance mode
Updating database schema
Updated database
Updating <lookup_server_connector> ...
Updated <lookup_server_connector> to 1.21.0
Updating <oauth2> ...
Updated <oauth2> to 1.21.0
Updating <password_policy> ...
Updated <password_policy> to 5.0.0-dev.0
Updating <user_ldap> ...
Updated <user_ldap> to 1.24.0
Updating <activity> ...
Updated <activity> to 6.0.0-dev.0
Updating <circles> ...
Updated <circles> to 33.0.0
Updating <cloud_federation_api> ...
Updated <cloud_federation_api> to 1.17.0
Updating <dav> ...
Fix broken values of calendar objects

 Starting ...

Clean up old calendar subscriptions from deleted users that were not cleaned-up

    0/0 [>---------------------------]   0% Starting ...

Updated <dav> to 1.36.0
Updating <files> ...
Updated <files> to 2.5.0
Updating <files_sharing> ...
Updated <files_sharing> to 1.25.2
Updating <files_trashbin> ...
Updated <files_trashbin> to 1.23.0
Updating <files_versions> ...
Updated <files_versions> to 1.26.0
Updating <sharebymail> ...
Updated <sharebymail> to 1.23.0
Updating <webhook_listeners> ...
Updated <webhook_listeners> to 1.5.0
Updating <workflowengine> ...
Updated <workflowengine> to 2.15.0
Updating <logreader> ...
Updated <logreader> to 6.0.0
Updating <nextcloud_announcements> ...
Updated <nextcloud_announcements> to 5.0.0
Updating <notifications> ...
Updated <notifications> to 6.0.0
Updating <systemtags> ...
Updated <systemtags> to 1.23.0
Updating <theming> ...
Updated <theming> to 2.8.0
Updating <app_api> ...
Updated <app_api> to 33.0.0
Updating <dashboard> ...
Updated <dashboard> to 7.13.0
Updating <federatedfilesharing> ...
Updated <federatedfilesharing> to 1.23.0
Updating <files_downloadlimit> ...
Updated <files_downloadlimit> to 5.1.0-dev.0
Updating <files_pdfviewer> ...
Updated <files_pdfviewer> to 6.0.0-dev.0
Updating <files_reminders> ...
Updated <files_reminders> to 1.6.0
Updating <firstrunwizard> ...
Updated <firstrunwizard> to 6.0.0-dev.0
Updating <privacy> ...
Updated <privacy> to 5.0.0-dev.0
Updating <profile> ...
Updated <profile> to 1.2.0
Updating <provisioning_api> ...
Updated <provisioning_api> to 1.23.0
Updating <recommendations> ...
Updated <recommendations> to 6.0.0-dev.0
Updating <related_resources> ...
Updated <related_resources> to 4.0.0-dev.0
Updating <settings> ...
Updated <settings> to 1.16.0
Updating <survey_client> ...
Updated <survey_client> to 5.0.0-dev.0
Updating <text> ...
Updated <text> to 7.0.0-dev.3
Updating <twofactor_backupcodes> ...
Updated <twofactor_backupcodes> to 1.22.0
Updating <twofactor_totp> ...
Updated <twofactor_totp> to 15.0.0-dev.0
Updating <user_status> ...
Updated <user_status> to 1.13.0
Updating <viewer> ...
Updated <viewer> to 6.0.0-dev.0
Updating <weather_status> ...
Updated <weather_status> to 1.13.0
Starting code integrity check...
Finished code integrity check
Update successful
Turned off maintenance mode
Resetting log level
Initializing finished
[custom-init] No custom files found, skipping...
[ls.io-init] done.
    0/0 [->--------------------------]   0%[migrations] started
[migrations] 01-nginx-site-confs-default: skipped
[migrations] 02-default-location: skipped
[migrations] done
usermod: no changes
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1000
User GID:    1000
───────────────────────────────────────
Linuxserver.io version: 33.0.0-ls418
Build-date: 2026-02-18T13:49:46+00:00
───────────────────────────────────────
    
using keys found in /config/keys
[custom-init] No custom files found, skipping...
[ls.io-init] done.
[migrations] started
[migrations] 01-nginx-site-confs-default: skipped
[migrations] 02-default-location: skipped
[migrations] done
usermod: no changes
───────────────────────────────────────

      ██╗     ███████╗██╗ ██████╗
      ██║     ██╔════╝██║██╔═══██╗
      ██║     ███████╗██║██║   ██║
      ██║     ╚════██║██║██║   ██║
      ███████╗███████║██║╚██████╔╝
      ╚══════╝╚══════╝╚═╝ ╚═════╝

   Brought to you by linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1000
User GID:    1000
───────────────────────────────────────
Linuxserver.io version: 33.0.0-ls418
Build-date: 2026-02-18T13:49:46+00:00
───────────────────────────────────────
    
using keys found in /config/keys
[custom-init] No custom files found, skipping...
[ls.io-init] done.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Issues

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions