Add Docker Healthcheck

Fixes #635
This commit is contained in:
zstadler 2022-11-03 09:52:03 +02:00
parent caa641c550
commit 24e26be2e1
4 changed files with 31 additions and 0 deletions

11
.gitattributes vendored Normal file
View file

@ -0,0 +1,11 @@
###############################################################################
# Set default behavior to automatically normalize line endings.
###############################################################################
* text=auto
###############################################################################
# behavior for Unix scripts
#
# Unix scripts are treated as binary by default.
###############################################################################
*.sh eol=lf

View file

@ -5,6 +5,7 @@ VOLUME /data
WORKDIR /data WORKDIR /data
EXPOSE 80 EXPOSE 80
ENTRYPOINT ["/bin/bash", "/usr/src/app/run.sh"] ENTRYPOINT ["/bin/bash", "/usr/src/app/run.sh"]
HEALTHCHECK CMD node /usr/src/app/src/healthcheck.js
RUN apt-get -qq update \ RUN apt-get -qq update \
&& DEBIAN_FRONTEND=noninteractive apt-get -y install \ && DEBIAN_FRONTEND=noninteractive apt-get -y install \

View file

@ -5,6 +5,7 @@ EXPOSE 80
VOLUME /data VOLUME /data
WORKDIR /data WORKDIR /data
ENTRYPOINT ["node", "/usr/src/app/", "-p", "80"] ENTRYPOINT ["node", "/usr/src/app/", "-p", "80"]
HEALTHCHECK CMD node /usr/src/app/src/healthcheck.js
RUN mkdir -p /usr/src/app RUN mkdir -p /usr/src/app
COPY / /usr/src/app COPY / /usr/src/app

18
src/healthcheck.js Normal file
View file

@ -0,0 +1,18 @@
var http = require("http");
var options = {
timeout: 2000,
};
var url = "http://localhost:80/health";
var request = http.request(url, options, (res) => {
console.log(`STATUS: ${res.statusCode}`);
if (res.statusCode == 200) {
process.exit(0);
} else {
process.exit(1);
}
});
request.on("error", function (err) {
console.log("ERROR");
process.exit(1);
});
request.end();