From 1a6af16560935ee8a16144eda4594da147d095ef Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 18:58:47 +0100 Subject: [PATCH 1/9] remove unsupported Debian versions See: https://wiki.debian.org/LTS --- tags/10/jessie/Dockerfile | 11 ----------- tags/10/stretch/Dockerfile | 11 ----------- tags/12/jessie/Dockerfile | 11 ----------- tags/12/stretch/Dockerfile | 11 ----------- tags/14/jessie/Dockerfile | 11 ----------- tags/14/stretch/Dockerfile | 11 ----------- tags/15/jessie/Dockerfile | 11 ----------- tags/15/stretch/Dockerfile | 11 ----------- tags/16/jessie/Dockerfile | 11 ----------- tags/16/stretch/Dockerfile | 11 ----------- tags/18/jessie/Dockerfile | 11 ----------- tags/18/stretch/Dockerfile | 11 ----------- tags/latest/jessie/Dockerfile | 11 ----------- tags/latest/stretch/Dockerfile | 11 ----------- tags/latest/wheezy/Dockerfile | 11 ----------- 15 files changed, 165 deletions(-) delete mode 100644 tags/10/jessie/Dockerfile delete mode 100644 tags/10/stretch/Dockerfile delete mode 100644 tags/12/jessie/Dockerfile delete mode 100644 tags/12/stretch/Dockerfile delete mode 100644 tags/14/jessie/Dockerfile delete mode 100644 tags/14/stretch/Dockerfile delete mode 100644 tags/15/jessie/Dockerfile delete mode 100644 tags/15/stretch/Dockerfile delete mode 100644 tags/16/jessie/Dockerfile delete mode 100644 tags/16/stretch/Dockerfile delete mode 100644 tags/18/jessie/Dockerfile delete mode 100644 tags/18/stretch/Dockerfile delete mode 100644 tags/latest/jessie/Dockerfile delete mode 100644 tags/latest/stretch/Dockerfile delete mode 100644 tags/latest/wheezy/Dockerfile diff --git a/tags/10/jessie/Dockerfile b/tags/10/jessie/Dockerfile deleted file mode 100644 index 99a3ca3..0000000 --- a/tags/10/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:10 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/10/stretch/Dockerfile b/tags/10/stretch/Dockerfile deleted file mode 100644 index 33515a9..0000000 --- a/tags/10/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:10-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/12/jessie/Dockerfile b/tags/12/jessie/Dockerfile deleted file mode 100644 index a745eb2..0000000 --- a/tags/12/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:12 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/12/stretch/Dockerfile b/tags/12/stretch/Dockerfile deleted file mode 100644 index c380c6a..0000000 --- a/tags/12/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:12-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/14/jessie/Dockerfile b/tags/14/jessie/Dockerfile deleted file mode 100644 index 8f80715..0000000 --- a/tags/14/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:14 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/14/stretch/Dockerfile b/tags/14/stretch/Dockerfile deleted file mode 100644 index f91b6fd..0000000 --- a/tags/14/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:14-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/15/jessie/Dockerfile b/tags/15/jessie/Dockerfile deleted file mode 100644 index 2a3ab6b..0000000 --- a/tags/15/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:15 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/15/stretch/Dockerfile b/tags/15/stretch/Dockerfile deleted file mode 100644 index b8175f8..0000000 --- a/tags/15/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:15-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/16/jessie/Dockerfile b/tags/16/jessie/Dockerfile deleted file mode 100644 index 6ef5a90..0000000 --- a/tags/16/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:16 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/16/stretch/Dockerfile b/tags/16/stretch/Dockerfile deleted file mode 100644 index 09fca9c..0000000 --- a/tags/16/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:16-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/18/jessie/Dockerfile b/tags/18/jessie/Dockerfile deleted file mode 100644 index 8134a80..0000000 --- a/tags/18/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:18 -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/18/stretch/Dockerfile b/tags/18/stretch/Dockerfile deleted file mode 100644 index 4b2ae91..0000000 --- a/tags/18/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:18-stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 81 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/latest/jessie/Dockerfile b/tags/latest/jessie/Dockerfile deleted file mode 100644 index ee983b0..0000000 --- a/tags/latest/jessie/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:latest -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/latest/stretch/Dockerfile b/tags/latest/stretch/Dockerfile deleted file mode 100644 index e94539e..0000000 --- a/tags/latest/stretch/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:stretch -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/latest/wheezy/Dockerfile b/tags/latest/wheezy/Dockerfile deleted file mode 100644 index df73052..0000000 --- a/tags/latest/wheezy/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:wheezy -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] From 06aa6cbbc2da8affeba223ecf52f4f76d9e7686a Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:02:21 +0100 Subject: [PATCH 2/9] remove unsupported NodeJS versions --- tags/10/alpine/Dockerfile | 11 ----------- tags/10/buster/Dockerfile | 11 ----------- tags/10/slim/Dockerfile | 11 ----------- tags/12/alpine/Dockerfile | 11 ----------- tags/12/buster/Dockerfile | 11 ----------- tags/12/slim/Dockerfile | 11 ----------- tags/14/alpine/Dockerfile | 11 ----------- tags/14/buster/Dockerfile | 11 ----------- tags/14/slim/Dockerfile | 11 ----------- tags/15/alpine/Dockerfile | 11 ----------- tags/15/buster/Dockerfile | 11 ----------- tags/15/slim/Dockerfile | 11 ----------- tags/16/alpine/Dockerfile | 11 ----------- tags/16/buster/Dockerfile | 11 ----------- tags/16/slim/Dockerfile | 11 ----------- 15 files changed, 165 deletions(-) delete mode 100644 tags/10/alpine/Dockerfile delete mode 100644 tags/10/buster/Dockerfile delete mode 100644 tags/10/slim/Dockerfile delete mode 100644 tags/12/alpine/Dockerfile delete mode 100644 tags/12/buster/Dockerfile delete mode 100644 tags/12/slim/Dockerfile delete mode 100644 tags/14/alpine/Dockerfile delete mode 100644 tags/14/buster/Dockerfile delete mode 100644 tags/14/slim/Dockerfile delete mode 100644 tags/15/alpine/Dockerfile delete mode 100644 tags/15/buster/Dockerfile delete mode 100644 tags/15/slim/Dockerfile delete mode 100644 tags/16/alpine/Dockerfile delete mode 100644 tags/16/buster/Dockerfile delete mode 100644 tags/16/slim/Dockerfile diff --git a/tags/10/alpine/Dockerfile b/tags/10/alpine/Dockerfile deleted file mode 100644 index ac68b11..0000000 --- a/tags/10/alpine/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:10-alpine -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/10/buster/Dockerfile b/tags/10/buster/Dockerfile deleted file mode 100644 index f3f7c0b..0000000 --- a/tags/10/buster/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:10-buster -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/10/slim/Dockerfile b/tags/10/slim/Dockerfile deleted file mode 100644 index a2a6059..0000000 --- a/tags/10/slim/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:10-slim -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/12/alpine/Dockerfile b/tags/12/alpine/Dockerfile deleted file mode 100644 index 1d554d5..0000000 --- a/tags/12/alpine/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:12-alpine -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/12/buster/Dockerfile b/tags/12/buster/Dockerfile deleted file mode 100644 index 642a32b..0000000 --- a/tags/12/buster/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:12-buster -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/12/slim/Dockerfile b/tags/12/slim/Dockerfile deleted file mode 100644 index 6b265eb..0000000 --- a/tags/12/slim/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:12-slim -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/14/alpine/Dockerfile b/tags/14/alpine/Dockerfile deleted file mode 100644 index b10af0b..0000000 --- a/tags/14/alpine/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:14-alpine -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/14/buster/Dockerfile b/tags/14/buster/Dockerfile deleted file mode 100644 index 7dc7c18..0000000 --- a/tags/14/buster/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:14-buster -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/14/slim/Dockerfile b/tags/14/slim/Dockerfile deleted file mode 100644 index a5765eb..0000000 --- a/tags/14/slim/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:14-slim -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/15/alpine/Dockerfile b/tags/15/alpine/Dockerfile deleted file mode 100644 index dc2e5a2..0000000 --- a/tags/15/alpine/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:15-alpine -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/15/buster/Dockerfile b/tags/15/buster/Dockerfile deleted file mode 100644 index cd8c9d7..0000000 --- a/tags/15/buster/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:15-buster -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/15/slim/Dockerfile b/tags/15/slim/Dockerfile deleted file mode 100644 index 9c83b5e..0000000 --- a/tags/15/slim/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:15-slim -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/16/alpine/Dockerfile b/tags/16/alpine/Dockerfile deleted file mode 100644 index fc5186c..0000000 --- a/tags/16/alpine/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:16-alpine -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/16/buster/Dockerfile b/tags/16/buster/Dockerfile deleted file mode 100644 index e1fe8b5..0000000 --- a/tags/16/buster/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:16-buster -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/16/slim/Dockerfile b/tags/16/slim/Dockerfile deleted file mode 100644 index eed3d76..0000000 --- a/tags/16/slim/Dockerfile +++ /dev/null @@ -1,11 +0,0 @@ -FROM node:16-slim -LABEL maintainer="Keymetrics " - -# Install pm2 -RUN npm install pm2 -g - -# Expose ports needed to use Keymetrics.io -EXPOSE 80 443 43554 - -# Start pm2.json process file -CMD ["pm2-runtime", "start", "pm2.json"] From b361ef2f448575410374c7dd4df9973164c9478e Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:05:32 +0100 Subject: [PATCH 3/9] add Debian Bullseye & Bookworm to NodeJS 18 & latest --- tags/18/bookworm/Dockerfile | 11 +++++++++++ tags/18/bullseye/Dockerfile | 11 +++++++++++ tags/latest/bookworm/Dockerfile | 11 +++++++++++ tags/latest/bullseye/Dockerfile | 11 +++++++++++ 4 files changed, 44 insertions(+) create mode 100644 tags/18/bookworm/Dockerfile create mode 100644 tags/18/bullseye/Dockerfile create mode 100644 tags/latest/bookworm/Dockerfile create mode 100644 tags/latest/bullseye/Dockerfile diff --git a/tags/18/bookworm/Dockerfile b/tags/18/bookworm/Dockerfile new file mode 100644 index 0000000..08bf4fd --- /dev/null +++ b/tags/18/bookworm/Dockerfile @@ -0,0 +1,11 @@ +FROM node:18-bookworm +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/18/bullseye/Dockerfile b/tags/18/bullseye/Dockerfile new file mode 100644 index 0000000..8071922 --- /dev/null +++ b/tags/18/bullseye/Dockerfile @@ -0,0 +1,11 @@ +FROM node:18-bullseye +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/latest/bookworm/Dockerfile b/tags/latest/bookworm/Dockerfile new file mode 100644 index 0000000..75cd157 --- /dev/null +++ b/tags/latest/bookworm/Dockerfile @@ -0,0 +1,11 @@ +FROM node:bookworm +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/latest/bullseye/Dockerfile b/tags/latest/bullseye/Dockerfile new file mode 100644 index 0000000..10f514a --- /dev/null +++ b/tags/latest/bullseye/Dockerfile @@ -0,0 +1,11 @@ +FROM node:bullseye +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] From 6e7ec31ab48294811e6044f22adb2febc967a331 Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:05:44 +0100 Subject: [PATCH 4/9] add NodeJS 20 --- tags/20/alpine/Dockerfile | 11 +++++++++++ tags/20/bookworm/Dockerfile | 11 +++++++++++ tags/20/bullseye/Dockerfile | 11 +++++++++++ tags/20/buster/Dockerfile | 11 +++++++++++ tags/20/slim/Dockerfile | 11 +++++++++++ 5 files changed, 55 insertions(+) create mode 100644 tags/20/alpine/Dockerfile create mode 100644 tags/20/bookworm/Dockerfile create mode 100644 tags/20/bullseye/Dockerfile create mode 100644 tags/20/buster/Dockerfile create mode 100644 tags/20/slim/Dockerfile diff --git a/tags/20/alpine/Dockerfile b/tags/20/alpine/Dockerfile new file mode 100644 index 0000000..8b5c917 --- /dev/null +++ b/tags/20/alpine/Dockerfile @@ -0,0 +1,11 @@ +FROM node:20-alpine +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/20/bookworm/Dockerfile b/tags/20/bookworm/Dockerfile new file mode 100644 index 0000000..5b28ea7 --- /dev/null +++ b/tags/20/bookworm/Dockerfile @@ -0,0 +1,11 @@ +FROM node:20-bookworm +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/20/bullseye/Dockerfile b/tags/20/bullseye/Dockerfile new file mode 100644 index 0000000..bf8c04b --- /dev/null +++ b/tags/20/bullseye/Dockerfile @@ -0,0 +1,11 @@ +FROM node:20-bullseye +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/20/buster/Dockerfile b/tags/20/buster/Dockerfile new file mode 100644 index 0000000..685de77 --- /dev/null +++ b/tags/20/buster/Dockerfile @@ -0,0 +1,11 @@ +FROM node:20-buster +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] diff --git a/tags/20/slim/Dockerfile b/tags/20/slim/Dockerfile new file mode 100644 index 0000000..5940276 --- /dev/null +++ b/tags/20/slim/Dockerfile @@ -0,0 +1,11 @@ +FROM node:20-slim +LABEL maintainer="Keymetrics " + +# Install pm2 +RUN npm install pm2 -g + +# Expose ports needed to use Keymetrics.io +EXPOSE 80 443 43554 + +# Start pm2.json process file +CMD ["pm2-runtime", "start", "pm2.json"] From 38816f02538059f3744c7fd0642fb35c36708ce0 Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:05:55 +0100 Subject: [PATCH 5/9] update .travis.yml --- .travis.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 89f2c7f..cdeaf2f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,10 +6,9 @@ services: - docker env: - TEST_TAGS='latest-alpine' - - TEST_TAGS='latest-stretch' - - TEST_TAGS='latest-buster' - - TEST_TAGS='latest-jessie' - TEST_TAGS='latest-slim' - - TEST_TAGS='latest-wheezy' + - TEST_TAGS='latest-buster' + - TEST_TAGS='latest-bullseye' + - TEST_TAGS='latest-bookworm' script: - cd example-app && npm install && npm test && cd .. From 38dd6f9c12e601f6aa16123f621b0bc85be5cf21 Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:10:41 +0100 Subject: [PATCH 6/9] set the "slim" Dockerfile to a hardcoded Debian version Doing this mainly for transparency, as these can change in the upstream over time --- tags/18/slim/Dockerfile | 2 +- tags/20/slim/Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/tags/18/slim/Dockerfile b/tags/18/slim/Dockerfile index a047995..e954f70 100644 --- a/tags/18/slim/Dockerfile +++ b/tags/18/slim/Dockerfile @@ -1,4 +1,4 @@ -FROM node:18-slim +FROM node:18-bookworm-slim LABEL maintainer="Keymetrics " # Install pm2 diff --git a/tags/20/slim/Dockerfile b/tags/20/slim/Dockerfile index 5940276..5a0e73c 100644 --- a/tags/20/slim/Dockerfile +++ b/tags/20/slim/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20-slim +FROM node:20-bookworm-slim LABEL maintainer="Keymetrics " # Install pm2 From f829dfb8120c03e32b478479900724f33d1dda89 Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:18:25 +0100 Subject: [PATCH 7/9] update README.md --- README.md | 51 +++++++++++++++++---------------------------------- 1 file changed, 17 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index a69e406..e0c4f8c 100644 --- a/README.md +++ b/README.md @@ -15,52 +15,33 @@ Further than that, using PM2 as a layer between the container and the applicatio **Image Name** | **Operating system** | **Dockerfile** ---|---|--- keymetrics/pm2:`latest-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[latest-alpine](tags/latest/alpine/Dockerfile) -keymetrics/pm2:`18-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[15-alpine](tags/16/alpine/Dockerfile) -keymetrics/pm2:`16-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[15-alpine](tags/16/alpine/Dockerfile) -keymetrics/pm2:`15-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[15-alpine](tags/15/alpine/Dockerfile) -keymetrics/pm2:`14-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[14-alpine](tags/14/alpine/Dockerfile) -keymetrics/pm2:`12-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[12-alpine](tags/12/alpine/Dockerfile) -keymetrics/pm2:`10-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[10-alpine](tags/10/alpine/Dockerfile) +keymetrics/pm2:`20-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[20-alpine](tags/20/alpine/Dockerfile) +keymetrics/pm2:`18-alpine`|[Alpine](https://www.alpinelinux.org/about/)|[18-alpine](tags/18/alpine/Dockerfile) **Image Name** | **Operating system** | **Dockerfile** ---|---|--- -keymetrics/pm2:`latest-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[latest-buster](tags/latest/buster/Dockerfile) -keymetrics/pm2:`18-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[18-buster](tags/18/buster/Dockerfile) -keymetrics/pm2:`16-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[16-buster](tags/16/buster/Dockerfile) -keymetrics/pm2:`15-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[15-buster](tags/15/buster/Dockerfile) -keymetrics/pm2:`14-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[14-buster](tags/14/buster/Dockerfile) -keymetrics/pm2:`12-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[12-buster](tags/12/buster/Dockerfile) -keymetrics/pm2:`10-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[10-buster](tags/10/buster/Dockerfile) +keymetrics/pm2:`latest-bookworm`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm)|[latest-bookworm](tags/latest/bookworm/Dockerfile) +keymetrics/pm2:`20-bookworm`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm)|[20-bookworm](tags/20/bookworm/Dockerfile) +keymetrics/pm2:`18-bookworm`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm)|[18-bookworm](tags/18/bookworm/Dockerfile) **Image Name** | **Operating system** | **Dockerfile** ---|---|--- -keymetrics/pm2:`latest-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[latest-stretch](tags/latest/stretch/Dockerfile) -keymetrics/pm2:`18-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[18-stretch](tags/18/stretch/Dockerfile) -keymetrics/pm2:`16-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[16-stretch](tags/16/stretch/Dockerfile) -keymetrics/pm2:`15-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[15-stretch](tags/15/stretch/Dockerfile) -keymetrics/pm2:`14-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[14-stretch](tags/14/stretch/Dockerfile) -keymetrics/pm2:`12-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[12-stretch](tags/12/stretch/Dockerfile) -keymetrics/pm2:`10-stretch`|[Debian Stretch](https://wiki.debian.org/DebianStretch)|[10-stretch](tags/10/stretch/Dockerfile) +keymetrics/pm2:`latest-bullseye`|[Debian Bullseye](https://wiki.debian.org/DebianBullseye)|[latest-bullseye](tags/latest/bullseye/Dockerfile) +keymetrics/pm2:`20-bullseye`|[Debian Bullseye](https://wiki.debian.org/DebianBullseye)|[20-bullseye](tags/20/bullseye/Dockerfile) +keymetrics/pm2:`18-bullseye`|[Debian Bullseye](https://wiki.debian.org/DebianBullseye)|[18-bullseye](tags/18/bullseye/Dockerfile) **Image Name** | **Operating system** | **Dockerfile** ---|---|--- -keymetrics/pm2:`latest-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[latest-jessie](tags/latest/jessie/Dockerfile) -keymetrics/pm2:`18-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[18-jessie](tags/18/jessie/Dockerfile) -keymetrics/pm2:`16-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[16-jessie](tags/16/jessie/Dockerfile) -keymetrics/pm2:`15-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[15-jessie](tags/15/jessie/Dockerfile) -keymetrics/pm2:`14-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[14-jessie](tags/14/jessie/Dockerfile) -keymetrics/pm2:`12-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[12-jessie](tags/12/jessie/Dockerfile) -keymetrics/pm2:`10-jessie`|[Debian Jessie](https://wiki.debian.org/DebianJessie)|[10-jessie](tags/10/jessie/Dockerfile) +keymetrics/pm2:`latest-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[latest-buster](tags/latest/buster/Dockerfile) +keymetrics/pm2:`20-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[20-buster](tags/20/buster/Dockerfile) +keymetrics/pm2:`18-buster`|[Debian Buster](https://wiki.debian.org/DebianBuster)|[18-buster](tags/18/buster/Dockerfile) **Image Name** | **Operating system** | **Dockerfile** ---|---|--- -keymetrics/pm2:`latest-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[latest-slim](tags/latest/slim/Dockerfile) -keymetrics/pm2:`18-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[18-slim](tags/18/slim/Dockerfile) -keymetrics/pm2:`16-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[16-slim](tags/16/slim/Dockerfile) -keymetrics/pm2:`15-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[15-slim](tags/15/slim/Dockerfile) -keymetrics/pm2:`14-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[14-slim](tags/14/slim/Dockerfile) -keymetrics/pm2:`12-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[12-slim](tags/12/slim/Dockerfile) -keymetrics/pm2:`10-slim`|[Debian Stretch](https://wiki.debian.org/DebianStretch) (minimal packages)|[10-slim](tags/10/slim/Dockerfile) +keymetrics/pm2:`latest-slim`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm) (minimal packages)|[latest-slim](tags/latest/slim/Dockerfile) +keymetrics/pm2:`20-slim`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm) (minimal packages)|[20-slim](tags/20/slim/Dockerfile) +keymetrics/pm2:`18-slim`|[Debian Bookworm](https://wiki.debian.org/DebianBookworm) (minimal packages)|[18-slim](tags/18/slim/Dockerfile) + You can find more information about the image variants [here](https://github.com/nodejs/docker-node#image-variants). @@ -68,6 +49,8 @@ You can find more information about the image variants [here](https://github.com The build process of these images is automatically triggered each time [Docker PM2's GitHub repo](https://github.com/keymetrics/docker-pm2) master branch is pushed. The build process of these images is automatically triggered each time [PM2's GitHub repo](https://github.com/Unitech/pm2) master branch is pushed. +> If you absolutely need to use an older NodeJS version, check the [docker-pm2](https://hub.docker.com/r/keymetrics/pm2/tags) Docker hub page for available images. _(Not recommended)_ + ## Usage Let's assume the following folder structure for your project. From 24a9af376185da36c1387ad43fdf0503f43ea0d4 Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:39:15 +0100 Subject: [PATCH 8/9] update example-app --- example-app/package.json | 5 +++-- example-app/src/api.js | 11 +++++------ example-app/src/worker.js | 2 -- example-app/test/test.sh | 4 ++-- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/example-app/package.json b/example-app/package.json index 89a127d..1678f64 100644 --- a/example-app/package.json +++ b/example-app/package.json @@ -4,13 +4,14 @@ "description": "Docker PM2 example app", "main": "index.js", "private": "true", + "type": "module", "scripts": { - "test": "xo&& bash ./test/test.sh" + "test": "xo && bash ./test/test.sh" }, "author": "Keymetrics ", "license": "MIT", "devDependencies": { - "xo": "^0.18.2" + "xo": "^0.56.0" }, "xo": { "space": true diff --git a/example-app/src/api.js b/example-app/src/api.js index 7c889a2..0c203f0 100644 --- a/example-app/src/api.js +++ b/example-app/src/api.js @@ -1,10 +1,9 @@ -'use strict'; +import http from 'node:http'; +import process from 'node:process'; -const http = require('http'); - -http.createServer((req, res) => { - res.writeHead(200); - res.end('hey'); +http.createServer((_request, response) => { + response.writeHead(200); + response.end('hey'); }).listen(process.env.PORT || 3000, () => { console.log('App listening on port 3000'); }); diff --git a/example-app/src/worker.js b/example-app/src/worker.js index 9ddd8b8..1d37751 100644 --- a/example-app/src/worker.js +++ b/example-app/src/worker.js @@ -1,5 +1,3 @@ -'use strict'; - setInterval(() => { console.log('Worker doing his job'); }, 2000); diff --git a/example-app/test/test.sh b/example-app/test/test.sh index a94e270..f3a5c0d 100644 --- a/example-app/test/test.sh +++ b/example-app/test/test.sh @@ -9,7 +9,7 @@ function success { } function spec { - if [ $1 == $2 ]; then + if [ "$1" == "$2" ]; then success "$3" else fail "$3" @@ -17,7 +17,7 @@ function spec { } function ispec { - if [ $1 != $2 ]; then + if [ "$1" != "$2" ]; then success "$3" else fail "$3" From 3a335a7bac9e9afd1247564020725de7c85e827b Mon Sep 17 00:00:00 2001 From: ThomasB Date: Wed, 13 Dec 2023 19:41:44 +0100 Subject: [PATCH 9/9] update docker-tags.sh --- docker-tags.sh | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/docker-tags.sh b/docker-tags.sh index c2e8c8d..d58e3d0 100644 --- a/docker-tags.sh +++ b/docker-tags.sh @@ -13,14 +13,9 @@ self="$(basename "${BASH_SOURCE[0]}")" date=$(date +'%Y-%m-%d %H:%M:%S') declare -A versions -versions['latest']='alpine|stretch|buster|jessie|slim' -versions['14']='alpine|stretch|buster|jessie|slim' -versions['13']='alpine|stretch|buster|jessie|slim' -versions['12']='alpine|stretch|buster|jessie|slim' -versions['10']='alpine|stretch|buster|jessie|slim|wheezy' -versions['8']='alpine|stretch|buster|jessie|slim|wheezy' -versions['6']='alpine|stretch|jessie|slim|wheezy' -versions['4']='alpine|stretch|jessie|slim|wheezy' +versions['latest']='alpine|bookworm|bullseye|buster|slim' +versions['20']='alpine|bookworm|bullseye|buster|slim' +versions['18']='alpine|bookworm|bullseye|buster|slim' echo "# This file is generated via $url/blob/$(fileCommit "$self")/$self" echo "# $date"