diff --git a/api/src/server.ts b/api/src/server.ts index 84b106c4373..02d21b66e30 100644 --- a/api/src/server.ts +++ b/api/src/server.ts @@ -5,6 +5,17 @@ import { HOST, PORT } from './utils/env'; const start = async () => { const fastify = await build(buildOptions); + + const stop = async (signal: NodeJS.Signals) => { + fastify.log.info(`Received ${signal}, shutting down.`); + await fastify.close(); + fastify.log.info('Shutdown complete'); + process.exit(0); + }; + + process.on('SIGINT', signal => void stop(signal)); + process.on('SIGTERM', signal => void stop(signal)); + try { const port = Number(PORT); fastify.log.info(`Starting server on port ${port}`);