← Containers / containers / examples
Хуки состояния
Когда Container запускается, останавливается, переходит в режим ожидания или завершается с ошибкой, это может запускать выполнение кода в Worker, определившем хуки состояния в Container класс. См. раздел Хуки жизненного цикла класса Container для дополнительных сведений.
import { Container } from "@cloudflare/containers";
export class MyContainer extends Container {
defaultPort = 4000;
sleepAfter = "5m";
override onStart() {
console.log("Container successfully started");
}
override onStop(stopParams) {
if (stopParams.exitCode === 0) {
console.log("Container stopped gracefully");
} else {
console.log("Container stopped with exit code:", stopParams.exitCode);
}
console.log("Container stop reason:", stopParams.reason);
}
override async onActivityExpired() {
console.log("Container became idle, stopping it now");
await this.stop();
}
override onError(error: string) {
console.log("Container error:", error);
}
}