Compare commits

...

75 Commits
master ... main

Author SHA1 Message Date
Sambo Chea fa9bec5af4
Breaking changes for alpine linux replace by node:18-alpine 2023-09-12 21:03:57 +07:00
Sambo Chea 4521bed92d
Upgrade pnpm to 8.7.5 2023-09-12 20:35:05 +07:00
Sambo Chea 9118543a9c
Upgrade pnpm to 8.7.0 2023-08-27 13:04:42 +07:00
Sambo Chea 68f89a42a8
Upgrade node to 18.17.1 2023-08-14 15:06:57 +07:00
Sambo Chea 8443f3a779
Upgrade pnpm to 8.6.12 2023-08-07 16:26:46 +07:00
Sambo Chea c21a9a84d9
Upgrade pnpm to 8.6.10 2023-07-26 09:00:40 +07:00
Sambo Chea 77f01ae00f
Upgrade pnpm 8.6.9 2023-07-20 10:57:39 +07:00
Sambo Chea 272046fb56
Upgrade pnpm to 8.6.6 2023-07-04 09:04:33 +07:00
Sambo Chea 587c95e246
Upgrade pnpm to 8.6.3 2023-06-20 11:10:49 +07:00
Sambo Chea 6d84a83350
Upgrade pnpm to 8.6.2 2023-06-16 19:02:58 +07:00
Sambo Chea 46bb646903
Upgrade pnpm to 8.6.1 2023-06-08 17:41:06 +07:00
Sambo Chea 86135fbcba
Upgrade pnpm to 8.6.0 2023-05-31 17:39:17 +07:00
Sambo Chea 8e900dc8c8
Upgrade pnpm to 8.5.1 2023-05-17 09:20:55 +07:00
Sambo Chea ed50b3d219
Upgrade pnpm to 8.5.0 2023-05-10 10:58:00 +07:00
Sambo Chea bc79a96076
Upgrade nodejs to 18.16.0 2023-05-08 19:46:43 +07:00
Sambo Chea 8c7b00f746
Upgrade pnpm to 8.4.0 2023-05-05 08:24:24 +07:00
Sambo Chea bd7ebc9c1b
Upgrade pnpm to 8.3.1 2023-04-20 08:46:01 +07:00
Sambo Chea 120738412f
Upgrade pnpm 2023-04-18 18:27:30 +07:00
Sambo Chea a231ada791
Upgrade pnpm to 8.2.0 2023-04-10 19:46:01 +07:00
Sambo Chea 97bc55e0af
Upgrade to nodejs 18 2023-03-31 18:05:03 +07:00
Sambo Chea e55dce9e43
Merge branch 'main' of https://github.com/CUBETIQ/calpine-node 2023-03-31 17:50:18 +07:00
Sambo Chea 4232e490b7
Upgrade pnpm to 8.1.0 2023-03-31 17:49:48 +07:00
Sambo Chea 1aa40a6d75
Merge pull request #7 from CUBETIQ/renovate/codacy-codacy-analysis-cli-action-digest
Update codacy/codacy-analysis-cli-action digest to db33ad5
2023-03-20 08:57:39 +07:00
Sambo Chea 939c70e7df
Merge branch 'main' of https://github.com/CUBETIQ/calpine-node 2023-03-20 08:52:39 +07:00
Sambo Chea d4656630db
Upgrade pnpm to 7.30.0 2023-03-20 08:52:06 +07:00
renovate[bot] c58626d017
Update codacy/codacy-analysis-cli-action digest to db33ad5 2023-03-17 10:37:04 +00:00
Sambo Chea a3144ab5b7
Merge pull request #2 from CUBETIQ/renovate/codacy-codacy-analysis-cli-action-digest
Update codacy/codacy-analysis-cli-action digest to 9acc82f
2023-03-09 20:01:27 +07:00
Sambo Chea dbcd25c55e
Merge pull request #3 from CUBETIQ/renovate/snyk-actions-digest
Update snyk/actions digest to 8061827
2023-03-09 20:01:18 +07:00
Sambo Chea 31484e82ab
Merge pull request #5 from CUBETIQ/renovate/actions-checkout-3.x
Update actions/checkout action to v3
2023-03-09 19:18:00 +07:00
Sambo Chea 8e29d340c7
Merge pull request #6 from CUBETIQ/renovate/github-codeql-action-2.x
Update github/codeql-action action to v2
2023-03-09 19:16:40 +07:00
renovate[bot] 10986cac4b
Update github/codeql-action action to v2 2023-03-09 12:13:05 +00:00
renovate[bot] 6008b44edb
Update actions/checkout action to v3 2023-03-09 12:12:59 +00:00
renovate[bot] e93c62f308
Update snyk/actions digest to 8061827 2023-03-09 08:48:33 +00:00
renovate[bot] 8518e07b8f
Update codacy/codacy-analysis-cli-action digest to 9acc82f 2023-03-09 08:48:27 +00:00
Sambo Chea ab5c008846
Merge pull request #1 from CUBETIQ/renovate/configure
Configure Renovate
2023-03-09 15:48:11 +07:00
renovate[bot] 4de38b0b08
Add renovate.json 2023-03-09 04:39:15 +00:00
Sambo Chea 453e318817
Upgrade pnpm to 7.29.0 2023-03-06 09:54:12 +07:00
Sambo Chea b2b359b63b
Upgrade pnpm to 7.28.0 2023-03-04 20:21:44 +07:00
Sambo Chea a030476374
Upgrade pnpm to 7.27.0 2023-02-09 09:16:37 +07:00
Sambo Chea 398ed50e13
Updated pnpm and npm 2023-02-03 19:56:42 +07:00
Sambo Chea 4eb9a8d71d
Upgrade pnpm to 7.26.0 2023-01-25 08:38:45 +07:00
Sambo Chea f9d2884859
Upgrade pnpm to 7.25.0 2023-01-14 14:11:08 +07:00
Sambo Chea 4a16436000
Add pnpm 7.24.2 2023-01-10 20:20:18 +07:00
Sambo Chea c4abd19af5
Upgrade nodejs and pnpm 2022-12-27 20:37:56 +07:00
Sambo Chea 019e21a5c3
Upgrade pnpm to 7.19.0 2022-12-23 17:09:22 +07:00
Sambo Chea 94f4692dc8
Upgrade to pnpm 7.18.2 2022-12-19 11:05:28 +07:00
Sambo Chea cfed0f429f
Upgrade pnpm to 7.18.1 2022-12-07 19:53:42 +07:00
Sambo Chea 626db1fa31
Upgrade pnpm to 7.18.0 2022-12-05 09:12:19 +07:00
Sambo Chea 16c7e3226c
Upgrade pnpm to 7.17.1 2022-11-28 20:13:10 +07:00
Sambo Chea 067bff735c
Upgrade pnpm to 7.17.0 2022-11-23 10:05:21 +07:00
Sambo Chea 4f701002de
Upgrade pnpm to 7.16.1 2022-11-19 09:12:05 +07:00
Sambo Chea ab35597839
Upgrade pnpm to 7.16.0 2022-11-15 14:45:45 +07:00
Sambo Chea d82a5ebbe5
Upgrade pnpm to 7.15.0 2022-11-11 09:08:10 +07:00
Sambo Chea 5ec58f4b11
Upgrade pnpm to 7.14.2 2022-11-03 18:36:15 +07:00
Sambo Chea 5cca0a45e6
Upgrade pnpm to 7.13.5 2022-10-18 10:44:06 +07:00
Sambo Chea 7bb5b26edd
Upgrade pnpm to 7.13.4 2022-10-11 10:02:45 +07:00
Sambo Chea b9785f9653
Upgrade pnpm to 7.13.1 2022-10-05 20:33:36 +07:00
Sambo Chea e50d1d78dc
Add pnpm 7.13.0 2022-10-03 18:45:01 +07:00
Sambo Chea 60b0991dd3
Build latest 2022-09-27 21:09:59 +07:00
Sambo Chea ecb577f655
Upgrade nodejs to 16.17.1 and pnpm 7.12.2 2022-09-27 15:41:58 +07:00
Sambo Chea d5e9587e42
Add yarn for default via npm package 2022-08-30 20:44:34 +07:00
Sambo Chea 302f400c39
Updated README and examples 2022-08-25 11:53:53 +07:00
Sambo Chea a3023036f8
Upgrade nodejs to 16.17.0 and add pnpm 7.9.5 for default 2022-08-25 11:50:36 +07:00
Sambo Chea c57953c52d
Fixed image tag 2022-05-06 10:45:16 +07:00
Sambo Chea ca6432bdc7
Fixed wrong file 2022-05-06 10:42:21 +07:00
Sambo Chea 213a15cb3f
Merge branch 'main' of https://github.com/CUBETIQ/calpine-node into main 2022-05-06 10:37:41 +07:00
Sambo Chea cb5d8ace85
Upgrade node to 16.15.0 and yarn 1.22.18 and add node git 2022-05-06 10:37:14 +07:00
Sambo Chea d3f391d0d3
Create snyk-container.yml 2022-03-26 09:37:32 +07:00
Sambo Chea 4184035a4a
Create codacy.yml 2022-03-26 09:37:09 +07:00
Sambo Chea e22f13c105
Upgrade nodejs 16.13.1 and yarn 1.22.17 2022-01-08 12:47:29 +07:00
Sambo Chea a3d4d2160c
Fixed checksum for node archive 2021-12-23 09:46:57 +07:00
Sambo Chea 71a598cabf
Updated readme and makefile 2021-12-23 09:18:49 +07:00
Sambo Chea ec41473af3
Add node version 16.5 and yarn 1.22.15 2021-12-23 08:56:19 +07:00
Sambo Chea db3b875005
Update docker-publish.yml 2021-09-26 18:51:12 +07:00
Sambo Chea 82b78116e9
Update docker-publish.yml 2021-07-14 15:04:32 +07:00
13 changed files with 325 additions and 114 deletions

60
.github/workflows/codacy.yml vendored Normal file
View File

@ -0,0 +1,60 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow checks out code, performs a Codacy security scan
# and integrates the results with the
# GitHub Advanced Security code scanning feature. For more information on
# the Codacy security scan action usage and parameters, see
# https://github.com/codacy/codacy-analysis-cli-action.
# For more information on Codacy Analysis CLI in general, see
# https://github.com/codacy/codacy-analysis-cli.
name: Codacy Security Scan
on:
push:
branches: [ main ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '44 1 * * 2'
permissions:
contents: read
jobs:
codacy-security-scan:
permissions:
contents: read # for actions/checkout to fetch code
security-events: write # for github/codeql-action/upload-sarif to upload SARIF results
name: Codacy Security Scan
runs-on: ubuntu-latest
steps:
# Checkout the repository to the GitHub Actions runner
- name: Checkout code
uses: actions/checkout@v3
# Execute Codacy Analysis CLI and generate a SARIF output with the security issues identified during the analysis
- name: Run Codacy Analysis CLI
uses: codacy/codacy-analysis-cli-action@db33ad5cfab49143adf0db6e890cf4bb9fb37b1c
with:
# Check https://github.com/codacy/codacy-analysis-cli#project-token to get your project token from your Codacy repository
# You can also omit the token and run the tools that support default configurations
project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
verbose: true
output: results.sarif
format: sarif
# Adjust severity of non-security issues
gh-code-scanning-compat: true
# Force 0 exit code to allow SARIF file generation
# This will handover control about PR rejection to the GitHub side
max-allowed-issues: 2147483647
# Upload the SARIF file generated in the previous step
- name: Upload SARIF results file
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: results.sarif

View File

@ -1,8 +1,8 @@
name: Docker CI
on:
release:
types: [created]
push:
branches: [ main ]
jobs:
docker:
@ -10,17 +10,16 @@ jobs:
steps:
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
uses: docker/setup-buildx-action@v2
-
name: Login to DockerHub
uses: docker/login-action@v1
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_SECRET }}
-
name: Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
-
name: Build and Push from Makefile
run: |

48
.github/workflows/snyk-container.yml vendored Normal file
View File

@ -0,0 +1,48 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# A sample workflow which checks out the code, builds a container
# image using Docker and scans that image for vulnerabilities using
# Snyk. The results are then uploaded to GitHub Security Code Scanning
#
# For more examples, including how to limit scans to only high-severity
# issues, monitor images for newly disclosed vulnerabilities in Snyk and
# fail PR checks for new vulnerabilities, see https://github.com/snyk/actions/
name: Snyk Container
on:
push:
branches: [ main ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '19 16 * * 0'
jobs:
snyk:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build a Docker image
run: docker build -t your/image-to-test .
- name: Run Snyk to check Docker image for vulnerabilities
# Snyk can be used to break the build when it detects vulnerabilities.
# In this case we want to upload the issues to GitHub Code Scanning
continue-on-error: true
uses: snyk/actions/docker@806182742461562b67788a64410098c9d9b96adb
env:
# In order to use the Snyk Action you will need to have a Snyk API token.
# More details in https://github.com/snyk/actions#getting-your-snyk-token
# or you can signup for free at https://snyk.io/login
SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
with:
image: your/image-to-test
args: --file=Dockerfile
- name: Upload result to GitHub Code Scanning
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: snyk.sarif

1
.gitignore vendored
View File

@ -0,0 +1 @@
.vscode/

View File

@ -1,103 +1,21 @@
FROM cubetiq/calpine-os-linux:latest
FROM cubetiq/calpine-node:slim
LABEL maintainer="sombochea@cubetiqs.com"
# Build with root access
USER root
# Install PNPM
RUN npm install -g pnpm@latest
ENV NODE_VERSION 14.16.0
ENV USER_UID 1001
# Update NPM package
RUN npm install -g npm@latest
RUN addgroup -g ${USER_UID} node \
&& adduser -u ${USER_UID} -G node -s /bin/sh -D node \
&& apk add --no-cache \
libstdc++ \
&& apk add --no-cache --virtual .build-deps \
curl \
&& ARCH= && alpineArch="$(apk --print-arch)" \
&& case "${alpineArch##*-}" in \
x86_64) \
ARCH='x64' \
CHECKSUM="53cd618bd0cd387d79e954383d67b540ebfbefee9e261800eefff60e1bf38644" \
;; \
*) ;; \
esac \
&& if [ -n "${CHECKSUM}" ]; then \
set -eu; \
curl -fsSLO --compressed "https://unofficial-builds.nodejs.org/download/release/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz"; \
echo "$CHECKSUM node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs; \
else \
echo "Building from source" \
# backup build
&& apk add --no-cache --virtual .build-deps-full \
binutils-gold \
g++ \
gcc \
gnupg \
libgcc \
linux-headers \
make \
python3 \
# gpg keys listed at https://github.com/nodejs/node#release-keys
&& for key in \
4ED778F539E3634C779C87C6D7062848A1AB005C \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
74F12602B6F1C4E913FAA37AD3A89613643B6201 \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
A48C2BEE680E841632CD4E44F07496B3EB3C1762 \
108F52B48DB57BB0CC439B2997B01419BD92F80A \
B9E2F5981AA6E0CD28160D9FF13993A75599653C \
; do \
gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
gpg --batch --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
gpg --batch --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xf "node-v$NODE_VERSION.tar.xz" \
&& cd "node-v$NODE_VERSION" \
&& ./configure \
&& make -j$(getconf _NPROCESSORS_ONLN) V= \
&& make install \
&& apk del .build-deps-full \
&& cd .. \
&& rm -Rf "node-v$NODE_VERSION" \
&& rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt; \
fi \
&& rm -f "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" \
&& apk del .build-deps \
# smoke tests
&& node --version \
&& npm --version
# Install yarn from npm package
RUN npm install -g yarn@latest --force
ENV YARN_VERSION 1.22.5
RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \
&& for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do \
gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
gpg --batch --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
gpg --batch --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" \
&& gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& mkdir -p /opt \
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& apk del .build-deps-yarn \
# smoke test
&& yarn --version
# Checking packages version
RUN echo "NODE: $(node --version)" \
&& echo "NPM: $(npm --version)" \
&& echo "NPX: $(npx --version)" \
&& echo "YARN: $(yarn --version)" \
&& echo "PNPM: $(pnpm --version)"
COPY entrypoint.sh /usr/local/bin/

111
Dockerfile.16-15-0 Normal file
View File

@ -0,0 +1,111 @@
FROM cubetiq/calpine-os-linux:latest
LABEL maintainer="sombochea@cubetiqs.com"
# Build with root access
USER root
ENV NODE_VERSION 16.15.0
ENV NODE_SHA256 4db62cabc0647fc18f537ed10b5573f3c23ffb4d4434e40713e7e472f1ed4e55
ENV USER_UID 1001
RUN addgroup -g ${USER_UID} node \
&& adduser -u ${USER_UID} -G node -s /bin/sh -D node \
&& apk add --no-cache \
libstdc++ \
&& apk add --no-cache --virtual .build-deps \
curl \
&& ARCH= && alpineArch="$(apk --print-arch)" \
&& case "${alpineArch##*-}" in \
x86_64) \
ARCH='x64' \
CHECKSUM=$NODE_SHA256 \
;; \
*) ;; \
esac \
&& if [ -n "${CHECKSUM}" ]; then \
set -eu; \
DL_ROOT="https://unofficial-builds.nodejs.org/download/release/v$NODE_VERSION/node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz"; \
echo "Downloading Node.js from ${DL_ROOT}"; \
curl -fsSLO --compressed $DL_ROOT; \
echo "$CHECKSUM node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" | sha256sum -c - \
&& tar -xJf "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" -C /usr/local --strip-components=1 --no-same-owner \
&& ln -s /usr/local/bin/node /usr/local/bin/nodejs; \
else \
echo "Building from source" \
# backup build
&& apk add --no-cache --virtual .build-deps-full \
binutils-gold \
g++ \
gcc \
gnupg \
libgcc \
linux-headers \
make \
python3 \
# gpg keys listed at https://github.com/nodejs/node#release-keys
&& for key in \
4ED778F539E3634C779C87C6D7062848A1AB005C \
94AE36675C464D64BAFA68DD7434390BDBE9B9C5 \
74F12602B6F1C4E913FAA37AD3A89613643B6201 \
71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 \
8FCCA13FEF1D0C2E91008E09770F7A9A5AE15600 \
C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 \
C82FA3AE1CBEDC6BE46B9360C43CEC45C17AB93C \
DD8F2338BAE7501E3DD5AC78C273792F7D83545D \
A48C2BEE680E841632CD4E44F07496B3EB3C1762 \
108F52B48DB57BB0CC439B2997B01419BD92F80A \
B9E2F5981AA6E0CD28160D9FF13993A75599653C \
; do \
gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
gpg --batch --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
gpg --batch --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" \
&& curl -fsSLO --compressed "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" \
&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc \
&& grep " node-v$NODE_VERSION.tar.xz\$" SHASUMS256.txt | sha256sum -c - \
&& tar -xf "node-v$NODE_VERSION.tar.xz" \
&& cd "node-v$NODE_VERSION" \
&& ./configure \
&& make -j$(getconf _NPROCESSORS_ONLN) V= \
&& make install \
&& apk del .build-deps-full \
&& cd .. \
&& rm -Rf "node-v$NODE_VERSION" \
&& rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt; \
fi \
&& rm -f "node-v$NODE_VERSION-linux-$ARCH-musl.tar.xz" \
&& apk del .build-deps \
# smoke tests
&& node --version \
&& npm --version
ENV YARN_VERSION 1.22.18
RUN apk add --no-cache --virtual .build-deps-yarn curl gnupg tar \
&& for key in \
6A010C5166006599AA17F08146C2130DFD2497F5 \
; do \
gpg --batch --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys "$key" || \
gpg --batch --keyserver hkp://ipv4.pool.sks-keyservers.net --recv-keys "$key" || \
gpg --batch --keyserver hkp://pgp.mit.edu:80 --recv-keys "$key" ; \
done \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz" \
&& curl -fsSLO --compressed "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-v$YARN_VERSION.tar.gz.asc" \
&& gpg --batch --verify yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& mkdir -p /opt \
&& tar -xzf yarn-v$YARN_VERSION.tar.gz -C /opt/ \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \
&& ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg \
&& rm yarn-v$YARN_VERSION.tar.gz.asc yarn-v$YARN_VERSION.tar.gz \
&& apk del .build-deps-yarn \
# smoke test
&& yarn --version
COPY entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]
CMD [ "node" ]

12
Dockerfile.git Normal file
View File

@ -0,0 +1,12 @@
FROM cubetiq/calpine-node:latest
LABEL maintainer="sombochea@cubetiqs.com"
RUN apk update && apk add --no-cache git
COPY entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]
CMD [ "node" ]

18
Dockerfile.slim Normal file
View File

@ -0,0 +1,18 @@
FROM node:18-alpine
LABEL maintainer="sombochea@cubetiqs.com"
# Update NPM package
RUN npm install -g npm@latest
# Checking packages version
RUN echo "NODE: $(node --version)" \
&& echo "NPM: $(npm --version)" \
&& echo "NPX: $(npx --version)"
COPY entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/entrypoint.sh
ENTRYPOINT ["entrypoint.sh"]
CMD [ "node" ]

View File

@ -1,7 +1,14 @@
DOCKER_IMAGE=cubetiq/calpine-node
DOCKER_IMAGE_NAME=${DOCKER_IMAGE}:14
DOCKER_IMAGE_GIT=cubetiq/calpine-node-git
DOCKER_IMAGE_NAME=${DOCKER_IMAGE}:18
build:
@echo 'Starting docker build with slim'
docker build -f Dockerfile.slim . -t ${DOCKER_IMAGE}:slim
@echo 'Starting docker push with slim'
docker push ${DOCKER_IMAGE}:slim
@echo 'Starting docker build'
docker build . -t ${DOCKER_IMAGE}
@ -10,4 +17,28 @@ build:
docker push ${DOCKER_IMAGE}
docker push ${DOCKER_IMAGE_NAME}
@echo 'Starting docker build with git'
docker build -f Dockerfile.git . -t ${DOCKER_IMAGE_GIT}
@echo 'Starting docker push with git'
docker push ${DOCKER_IMAGE_GIT}
.PHONY:build
test:
@echo 'Starting docker build with slim'
docker build -f Dockerfile.slim . -t ${DOCKER_IMAGE}:slim
@echo 'Starting docker build'
docker build . -t ${DOCKER_IMAGE}
@echo 'Starting docker run with slim'
docker run --rm -it ${DOCKER_IMAGE}:slim --version
@echo 'Starting docker run'
docker run --rm -it ${DOCKER_IMAGE} --version
@echo 'Starting docker run with git'
docker run --rm -it ${DOCKER_IMAGE_GIT} --version
.PHONY:test

View File

@ -1,21 +1,26 @@
# CUBETIQ Alpine OS Linux with Nodejs 14
# CUBETIQ Alpine OS Linux with Nodejs 18
![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/cubetiq/calpine-node)
![Docker Pulls](https://img.shields.io/docker/pulls/cubetiq/calpine-node)
- CUBETIQ Alpine OS Linux (3.13.3)
- Nodejs 14 (14.16.0)
- CUBETIQ Alpine OS Linux (Latest)
- Nodejs 18
- PNPM 8 (8.7.5)
# [Docker Hub](https://hub.docker.com/r/cubetiq/calpine-node)
```shell
docker push cubetiq/calpine-node:14
docker push cubetiq/calpine-node:latest
```
# Usage
```shell
docker run --rm -it cubetiq/calpine-node:14 /bin/sh
docker run --rm -it cubetiq/calpine-node:latest /bin/sh
```
# Example
```Dockerfile
FROM cubetiq/calpine-node:latest
LABEL maintainer="sombochea@cubetiqs.com"
@ -24,15 +29,17 @@ WORKDIR /usr/src/app
COPY . /usr/src/app
RUN yarn
RUN pnpm install
CMD [ "node" , "index.js"]
```
# Contributors
- Sambo Chea <sombochea@cubetiqs.com>
- Sambo Chea <sombochea@cubetiqs.com>
# License
```text
MIT License

View File

@ -11,6 +11,6 @@ WORKDIR /app
COPY . /app
RUN yarn
RUN pnpm install
CMD [ "node" , "index.js"]

View File

@ -5,6 +5,6 @@ WORKDIR /usr/src/app
COPY . /usr/src/app
RUN yarn
RUN pnpm install
CMD [ "node" , "index.js"]

6
renovate.json Normal file
View File

@ -0,0 +1,6 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"extends": [
"config:base"
]
}