Skip to content

perf: KEEP-1257 Reduce scheduler Docker image from 1.85GB to 267MB#167

Merged
suisuss merged 1 commit intostagingfrom
feat/KEEP-1257-scheduler-docker-size
Jan 22, 2026
Merged

perf: KEEP-1257 Reduce scheduler Docker image from 1.85GB to 267MB#167
suisuss merged 1 commit intostagingfrom
feat/KEEP-1257-scheduler-docker-size

Conversation

@suisuss
Copy link
Copy Markdown

@suisuss suisuss commented Jan 22, 2026

Summary

Reduces the scheduler Docker image size by 85% (1.85GB → 267MB) by using a separate minimal dependency set instead of copying the full node_modules.

Changes

  • Added scheduler/package.json with only 6 required dependencies:
    • @aws-sdk/client-sqs
    • @kubernetes/client-node
    • cron-parser
    • drizzle-orm
    • nanoid
    • postgres
  • Added scheduler-deps Docker stage that installs only scheduler dependencies
  • Updated scheduler stage to use slim deps instead of full node_modules
  • Updated GitHub workflow path filters to trigger rebuilds on scheduler/** changes

Test Plan

  • Built scheduler image locally: docker build --target scheduler -t keeperhub-scheduler:slim .
  • Verified image size: 267MB (down from 1.85GB)
  • Tested scheduler scripts run correctly in slim image
  • Verified docker-compose compatibility
  • Verified Helm values compatibility

Jira

KEEP-1257

@suisuss suisuss requested review from a team, OleksandrUA, eskp, joelorzet and taitsengstock and removed request for a team January 22, 2026 00:57
@suisuss suisuss merged commit 51fadac into staging Jan 22, 2026
1 check passed
@suisuss suisuss deleted the feat/KEEP-1257-scheduler-docker-size branch January 22, 2026 01:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants