mirror of
https://github.com/docker/awesome-compose.git
synced 2025-04-26 10:43:35 +02:00
react-express-mysql: split backend code
Signed-off-by: Jérémie Drouet <jeremie.drouet@gmail.com>
This commit is contained in:
parent
2ef179e53b
commit
75aa52524c
7 changed files with 130 additions and 126 deletions
48
react-express-mysql/backend/src/index.js
vendored
Executable file
48
react-express-mysql/backend/src/index.js
vendored
Executable file
|
@ -0,0 +1,48 @@
|
|||
const app = require("./server");
|
||||
const { port } = require("./config");
|
||||
|
||||
const server = app.listen(port, function() {
|
||||
console.log("Webserver is ready");
|
||||
});
|
||||
|
||||
//
|
||||
// need this in docker container to properly exit since node doesn't handle SIGINT/SIGTERM
|
||||
// this also won't work on using npm start since:
|
||||
// https://github.com/npm/npm/issues/4603
|
||||
// https://github.com/npm/npm/pull/10868
|
||||
// https://github.com/RisingStack/kubernetes-graceful-shutdown-example/blob/master/src/index.js
|
||||
// if you want to use npm then start with `docker run --init` to help, but I still don't think it's
|
||||
// a graceful shutdown of node process
|
||||
//
|
||||
|
||||
// quit on ctrl-c when running docker in terminal
|
||||
process.on("SIGINT", function onSigint() {
|
||||
console.info(
|
||||
"Got SIGINT (aka ctrl-c in docker). Graceful shutdown ",
|
||||
new Date().toISOString()
|
||||
);
|
||||
shutdown();
|
||||
});
|
||||
|
||||
// quit properly on docker stop
|
||||
process.on("SIGTERM", function onSigterm() {
|
||||
console.info(
|
||||
"Got SIGTERM (docker container stop). Graceful shutdown ",
|
||||
new Date().toISOString()
|
||||
);
|
||||
shutdown();
|
||||
});
|
||||
|
||||
// shut down server
|
||||
function shutdown() {
|
||||
server.close(function onServerClosed(err) {
|
||||
if (err) {
|
||||
console.error(err);
|
||||
process.exit(1);
|
||||
}
|
||||
process.exit(0);
|
||||
});
|
||||
}
|
||||
//
|
||||
// need above in docker container to properly exit
|
||||
//
|
Loading…
Add table
Add a link
Reference in a new issue