Scheduled Jobs

Scheduled Jobs

Ein Container, der nach Zeitplan läuft, seine Arbeit macht und sich beendet.

.md ansehen Geprüft gegen 2026.8.7
Auf dieser Seite

Was das ist

Ein Scheduled Job ist ein Container, den klickops nach Fahrplan startet. Er läuft, wird fertig und verschwindet bis zum nächsten Mal. Jeder Start ist ein Run, mit eigenem Exit-Code und eigenen Logs, so lange aufbewahrt, wie du willst.

Das ist das Gegenstück zur App. Eine App soll laufen und wird neu gestartet, wenn sie sich beendet. Ein Job soll sich beenden, und Weiterlaufen ist der Fehlerfall.

Wann du das brauchst

  • Ein nächtlicher Export, ein Rechnungslauf, ein Aufräumjob.
  • Ein wiederkehrender Abruf bei einer fremden API.
  • Eine Migration, die du auf einem Timer laufen lassen willst statt von Hand.
Nicht dafür

Arbeit, die auf ein Ereignis reagiert statt auf eine Uhrzeit, ist kein Scheduled Job. Ein Queue-Consumer, der immer zuhören muss, ist eine App.

Einen anlegen

  1. Öffne das Projekt, geh auf Scheduled jobs und dann auf New scheduled job.
  2. Gib ihm einen Namen und das Image, das laufen soll. Ein Kommando ist optional. Ohne eines läuft der Entrypoint des Images.
  3. Setz den Zeitplan. Er ist ein Cron-Ausdruck, und der Standard 0 * * * * bedeutet zu jeder vollen Stunde. Die Seite zeigt die nächsten Läufe im Klartext, damit du prüfen kannst, ob der Ausdruck meint, was du denkst.
  4. Lass die Ressourcen auf automatisch, ausser du weisst, dass der Job schwer ist.
  5. Leg ihn an. Er erscheint mit seiner nächsten Laufzeit und wartet.

Die Liste der Scheduled Jobs, mit den nächsten 24 Stunden und dem letzten Ergebnis pro Job.Die Liste der Scheduled Jobs, mit den nächsten 24 Stunden und dem letzten Ergebnis pro Job.
Die Liste der Scheduled Jobs, mit den nächsten 24 Stunden und dem letzten Ergebnis pro Job.

Beobachten

Öffne den Job. Der Tab Runs listet jeden Start mit Ergebnis und Dauer. Jeder Run behält seine eigenen Logs, und das ist der Unterschied zwischen "hat nicht geklappt" und zu wissen, warum.

Du kannst jederzeit einen Run von Hand starten. Der läuft sofort, ohne den Zeitplan anzufassen. So testest du die Sache, bevor du sie einem Timer anvertraust.

Einstellungen im Überblick

EinstellungStandardWas sie bewirkt
Zeitplan0 * * * *Cron-Ausdruck. Standardmässig stündlich.
Zeitzonedie des ClustersNach welcher Uhr der Zeitplan geht. Setz sie, wenn dein Job lokale Mitternacht meint.
ConcurrencyAllowWas passiert, wenn ein Run noch läuft und der nächste ansteht. Forbid lässt ihn aus, Replace beendet den alten.
Aufbewahrte Runs3 erfolgreiche, 1 fehlgeschlagenerWie viel Verlauf und wie viele Logs bleiben.
RessourcenautomatischCPU und Memory. Zieh sie hoch für einen Job, der echte Arbeit macht.
PausiertneinHält den Zeitplan an, ohne den Job zu löschen.

Grenzen und Fallstricke

  • Allow ist der Standard und bedeutet Überlappung. Ein Job, der länger dauert als sein Intervall, läuft doppelt. Ist das unsicher, setz Forbid.
  • Ein verpasstes Fenster wird nicht nachgeholt. Konnte der Cluster einen Run nicht starten, ist dieser Termin weg und steht nicht in einer Warteschlange.
  • Logs verschwinden mit ihrem Run. Die Aufbewahrung bestimmt, wie weit du zurückschauen kannst, und standardmässig bleiben nur die letzten drei Erfolge.
  • Ein Job, der sich nie beendet, blockiert den nächsten unter Forbid und stapelt sich unter Allow. Gib langen Jobs ein eigenes Timeout.

Verwandt

  • Apps für Arbeit, die durchgehend laufen muss.
  • Secrets, falls der Job Zugangsdaten braucht.