Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fa00a25d4d | |||
| 547902d7dc | |||
| 9dec627696 | |||
| 3aa0882bcd | |||
| 39a635be23 | |||
| 59aa098bbb |
@@ -27,9 +27,11 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
|
|||||||
ssh \
|
ssh \
|
||||||
wget \
|
wget \
|
||||||
unzip \
|
unzip \
|
||||||
|
jq \
|
||||||
iputils-ping \
|
iputils-ping \
|
||||||
dnsutils \
|
dnsutils \
|
||||||
tini \
|
tini \
|
||||||
|
gcc-aarch64-linux-gnu \
|
||||||
&& apt-get clean
|
&& apt-get clean
|
||||||
|
|
||||||
# Layer 2: Chromium + Puppeteer/Playwright browser deps
|
# Layer 2: Chromium + Puppeteer/Playwright browser deps
|
||||||
@@ -132,6 +134,12 @@ RUN curl -fsSL https://deno.land/install.sh | sh
|
|||||||
ENV DENO_INSTALL="/root/.deno"
|
ENV DENO_INSTALL="/root/.deno"
|
||||||
ENV PATH="$DENO_INSTALL/bin:$PATH"
|
ENV PATH="$DENO_INSTALL/bin:$PATH"
|
||||||
|
|
||||||
|
# Install Rust
|
||||||
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
|
||||||
|
&& . /root/.cargo/env \
|
||||||
|
&& rustup target add aarch64-unknown-linux-gnu
|
||||||
|
ENV PATH="/root/.cargo/bin:$PATH"
|
||||||
|
|
||||||
# Set entrypoint to make nvm available in all runtime contexts
|
# Set entrypoint to make nvm available in all runtime contexts
|
||||||
ENTRYPOINT ["/usr/bin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
ENTRYPOINT ["/usr/bin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
||||||
CMD ["bash"]
|
CMD ["bash"]
|
||||||
|
|||||||
61
Dockerfile_alpine
Normal file
61
Dockerfile_alpine
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
FROM alpine:latest
|
||||||
|
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
||||||
|
|
||||||
|
WORKDIR /workspace
|
||||||
|
|
||||||
|
# Important environment variables
|
||||||
|
ENV NODE_VERSION_LTS="24.13.0" \
|
||||||
|
NVM_DIR="/usr/local/nvm" \
|
||||||
|
NVM_NODEJS_ORG_MIRROR="https://unofficial-builds.nodejs.org/download/release"
|
||||||
|
|
||||||
|
# Install required packages for NVM and Node.js
|
||||||
|
RUN apk add --no-cache \
|
||||||
|
bash \
|
||||||
|
curl \
|
||||||
|
git \
|
||||||
|
ca-certificates \
|
||||||
|
unzip \
|
||||||
|
gcompat \
|
||||||
|
libstdc++ \
|
||||||
|
tini
|
||||||
|
|
||||||
|
# Install NVM (latest version for better Alpine/musl support)
|
||||||
|
RUN mkdir -p $NVM_DIR && curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
||||||
|
|
||||||
|
# Make nvm available globally in all bash shells (interactive + non-interactive)
|
||||||
|
# IMPORTANT: Create /etc/bash.bashrc with nvm initialization
|
||||||
|
RUN printf '%s\n%s\n%s\n' \
|
||||||
|
'export NVM_DIR="/usr/local/nvm"' \
|
||||||
|
'[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' \
|
||||||
|
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
||||||
|
> /etc/bash.bashrc
|
||||||
|
|
||||||
|
# Copy nvm wrapper scripts from support directory
|
||||||
|
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
||||||
|
COPY image_support_files/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
||||||
|
RUN chmod +x /usr/local/bin/bash-with-nvm /usr/local/bin/docker-entrypoint.sh
|
||||||
|
|
||||||
|
# Use wrapper for RUN commands to enable nvm
|
||||||
|
SHELL ["/usr/local/bin/bash-with-nvm"]
|
||||||
|
|
||||||
|
# Enable nvm for runtime bash commands (CI/CD workflows)
|
||||||
|
ENV BASH_ENV=/etc/bash.bashrc
|
||||||
|
|
||||||
|
# Install Node.js LTS via NVM
|
||||||
|
# Use musl-specific builds from unofficial-builds for Alpine compatibility
|
||||||
|
# TARGETARCH fix: QEMU buildx can report wrong arch via uname -m, causing NVM
|
||||||
|
# to download x64 binaries on arm64. We override nvm_get_arch to ensure the
|
||||||
|
# correct architecture binary is downloaded.
|
||||||
|
ARG TARGETARCH
|
||||||
|
RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x64-musl") \
|
||||||
|
&& nvm_get_arch() { echo "$NVM_MUSL_ARCH"; } \
|
||||||
|
&& nvm install $NODE_VERSION_LTS \
|
||||||
|
&& nvm alias default $NODE_VERSION_LTS \
|
||||||
|
&& nvm use default
|
||||||
|
|
||||||
|
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
||||||
|
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
||||||
|
|
||||||
|
# Set entrypoint to make nvm available in all runtime contexts
|
||||||
|
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
||||||
|
CMD ["bash"]
|
||||||
@@ -1,59 +1,9 @@
|
|||||||
FROM alpine:latest
|
FROM host.today/ht-docker-node:alpine
|
||||||
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
||||||
|
|
||||||
WORKDIR /workspace
|
ENV BUN_INSTALL="/root/.bun"
|
||||||
|
|
||||||
# Important environment variables
|
# Install Bun
|
||||||
ENV NODE_VERSION_LTS="24.13.0" \
|
RUN curl -fsSL https://bun.sh/install | bash
|
||||||
NVM_DIR="/usr/local/nvm" \
|
|
||||||
BUN_INSTALL="/root/.bun" \
|
|
||||||
NVM_NODEJS_ORG_MIRROR="https://unofficial-builds.nodejs.org/download/release"
|
|
||||||
|
|
||||||
# Install required packages for NVM and Node.js
|
ENV PATH="$BUN_INSTALL/bin:$PATH"
|
||||||
RUN apk add --no-cache \
|
|
||||||
bash \
|
|
||||||
curl \
|
|
||||||
git \
|
|
||||||
ca-certificates \
|
|
||||||
unzip \
|
|
||||||
libstdc++ \
|
|
||||||
tini
|
|
||||||
|
|
||||||
# Install NVM (latest version for better Alpine/musl support)
|
|
||||||
RUN mkdir -p $NVM_DIR && curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
||||||
|
|
||||||
# Make nvm available globally in all bash shells (interactive + non-interactive)
|
|
||||||
# IMPORTANT: Create /etc/bash.bashrc with nvm initialization
|
|
||||||
RUN printf '%s\n%s\n%s\n' \
|
|
||||||
'export NVM_DIR="/usr/local/nvm"' \
|
|
||||||
'[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' \
|
|
||||||
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
|
||||||
> /etc/bash.bashrc
|
|
||||||
|
|
||||||
# Copy nvm wrapper scripts from support directory
|
|
||||||
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
|
||||||
COPY image_support_files/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
|
||||||
RUN chmod +x /usr/local/bin/bash-with-nvm /usr/local/bin/docker-entrypoint.sh
|
|
||||||
|
|
||||||
# Use wrapper for RUN commands to enable nvm
|
|
||||||
SHELL ["/usr/local/bin/bash-with-nvm"]
|
|
||||||
|
|
||||||
# Enable nvm for runtime bash commands (CI/CD workflows)
|
|
||||||
ENV BASH_ENV=/etc/bash.bashrc
|
|
||||||
|
|
||||||
# Install Node.js LTS via NVM and Bun
|
|
||||||
# TARGETARCH fix: QEMU buildx can report wrong arch via uname -m
|
|
||||||
ARG TARGETARCH
|
|
||||||
RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x64-musl") \
|
|
||||||
&& nvm_get_arch() { echo "$NVM_MUSL_ARCH"; } \
|
|
||||||
&& nvm install $NODE_VERSION_LTS \
|
|
||||||
&& nvm alias default $NODE_VERSION_LTS \
|
|
||||||
&& nvm use default \
|
|
||||||
&& curl -fsSL https://bun.sh/install | bash
|
|
||||||
|
|
||||||
ENV PATH="$BUN_INSTALL/bin:$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH"
|
|
||||||
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
|
||||||
|
|
||||||
# Set entrypoint to make nvm available in all runtime contexts
|
|
||||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
|
||||||
CMD ["bash"]
|
|
||||||
|
|||||||
@@ -1,59 +1,9 @@
|
|||||||
FROM alpine:edge
|
FROM host.today/ht-docker-node:alpine
|
||||||
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
||||||
|
|
||||||
WORKDIR /workspace
|
ENV DENO_INSTALL="/root/.deno"
|
||||||
|
|
||||||
# Important environment variables
|
# Install Deno (standard glibc binary works via gcompat in base image)
|
||||||
ENV NODE_VERSION_LTS="24.13.0" \
|
RUN curl -fsSL https://deno.land/install.sh | sh
|
||||||
NVM_DIR="/usr/local/nvm" \
|
|
||||||
NVM_NODEJS_ORG_MIRROR="https://unofficial-builds.nodejs.org/download/release"
|
|
||||||
|
|
||||||
# Install required packages for NVM and Node.js
|
ENV PATH="$DENO_INSTALL/bin:$PATH"
|
||||||
# Install Deno from Alpine community repository (native musl build)
|
|
||||||
RUN apk add --no-cache \
|
|
||||||
bash \
|
|
||||||
curl \
|
|
||||||
git \
|
|
||||||
ca-certificates \
|
|
||||||
unzip \
|
|
||||||
libstdc++ \
|
|
||||||
tini \
|
|
||||||
deno
|
|
||||||
|
|
||||||
# Install NVM (latest version for better Alpine/musl support)
|
|
||||||
RUN mkdir -p $NVM_DIR && curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
||||||
|
|
||||||
# Make nvm available globally in all bash shells (interactive + non-interactive)
|
|
||||||
# IMPORTANT: Create /etc/bash.bashrc with nvm initialization
|
|
||||||
RUN printf '%s\n%s\n%s\n' \
|
|
||||||
'export NVM_DIR="/usr/local/nvm"' \
|
|
||||||
'[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' \
|
|
||||||
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
|
||||||
> /etc/bash.bashrc
|
|
||||||
|
|
||||||
# Copy nvm wrapper scripts from support directory
|
|
||||||
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
|
||||||
COPY image_support_files/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
|
||||||
RUN chmod +x /usr/local/bin/bash-with-nvm /usr/local/bin/docker-entrypoint.sh
|
|
||||||
|
|
||||||
# Use wrapper for RUN commands to enable nvm
|
|
||||||
SHELL ["/usr/local/bin/bash-with-nvm"]
|
|
||||||
|
|
||||||
# Enable nvm for runtime bash commands (CI/CD workflows)
|
|
||||||
ENV BASH_ENV=/etc/bash.bashrc
|
|
||||||
|
|
||||||
# Install Node.js LTS via NVM (Deno already installed from Alpine repos)
|
|
||||||
# TARGETARCH fix: QEMU buildx can report wrong arch via uname -m
|
|
||||||
ARG TARGETARCH
|
|
||||||
RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x64-musl") \
|
|
||||||
&& nvm_get_arch() { echo "$NVM_MUSL_ARCH"; } \
|
|
||||||
&& nvm install $NODE_VERSION_LTS \
|
|
||||||
&& nvm alias default $NODE_VERSION_LTS \
|
|
||||||
&& nvm use default
|
|
||||||
|
|
||||||
ENV PATH="$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH"
|
|
||||||
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
|
||||||
|
|
||||||
# Set entrypoint to make nvm available in all runtime contexts
|
|
||||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
|
||||||
CMD ["bash"]
|
|
||||||
|
|||||||
@@ -1,74 +1,22 @@
|
|||||||
FROM alpine:latest
|
FROM host.today/ht-docker-node:alpine
|
||||||
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
||||||
|
|
||||||
WORKDIR /workspace
|
ENV PNPM_HOME="/root/.local/share/pnpm"
|
||||||
|
|
||||||
# Important environment variables
|
# Install additional build tools for native modules
|
||||||
ENV NODE_VERSION_LTS="24.13.0" \
|
|
||||||
NVM_DIR="/usr/local/nvm" \
|
|
||||||
PNPM_HOME="/root/.local/share/pnpm" \
|
|
||||||
NVM_NODEJS_ORG_MIRROR="https://unofficial-builds.nodejs.org/download/release"
|
|
||||||
|
|
||||||
# Install required packages for NVM and Node.js
|
|
||||||
RUN apk add --no-cache \
|
RUN apk add --no-cache \
|
||||||
bash \
|
|
||||||
curl \
|
|
||||||
git \
|
|
||||||
build-base \
|
build-base \
|
||||||
python3 \
|
python3 \
|
||||||
linux-headers \
|
linux-headers \
|
||||||
ca-certificates \
|
|
||||||
wget \
|
wget \
|
||||||
unzip \
|
|
||||||
iputils \
|
iputils \
|
||||||
bind-tools \
|
bind-tools
|
||||||
libstdc++ \
|
|
||||||
tini
|
|
||||||
|
|
||||||
# Install NVM (latest version for better Alpine/musl support)
|
|
||||||
RUN mkdir -p $NVM_DIR && curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
||||||
|
|
||||||
# Make nvm available globally in all bash shells (interactive + non-interactive)
|
|
||||||
# IMPORTANT: Create /etc/bash.bashrc with nvm initialization
|
|
||||||
RUN printf '%s\n%s\n%s\n' \
|
|
||||||
'export NVM_DIR="/usr/local/nvm"' \
|
|
||||||
'[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"' \
|
|
||||||
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
|
||||||
> /etc/bash.bashrc
|
|
||||||
|
|
||||||
# Copy nvm wrapper scripts from support directory
|
|
||||||
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
|
||||||
COPY image_support_files/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
|
||||||
RUN chmod +x /usr/local/bin/bash-with-nvm /usr/local/bin/docker-entrypoint.sh
|
|
||||||
|
|
||||||
# Use wrapper for RUN commands to enable nvm
|
|
||||||
SHELL ["/usr/local/bin/bash-with-nvm"]
|
|
||||||
|
|
||||||
# Enable nvm for runtime bash commands (CI/CD workflows)
|
|
||||||
ENV BASH_ENV=/etc/bash.bashrc
|
|
||||||
|
|
||||||
# Prepare pnpm directory
|
# Prepare pnpm directory
|
||||||
RUN mkdir -p ${PNPM_HOME}
|
RUN mkdir -p ${PNPM_HOME}
|
||||||
ENV PATH="$PNPM_HOME:$PATH"
|
ENV PATH="$PNPM_HOME:$PATH"
|
||||||
|
|
||||||
# Install Node.js LTS via NVM and pnpm
|
# Install pnpm
|
||||||
# Use musl-specific builds from unofficial-builds for Alpine compatibility
|
RUN npm install -g pnpm \
|
||||||
# TARGETARCH fix: QEMU buildx can report wrong arch via uname -m, causing NVM
|
|
||||||
# to download x64 binaries on arm64. We create a temporary uname wrapper to
|
|
||||||
# ensure the correct architecture binary is downloaded.
|
|
||||||
ARG TARGETARCH
|
|
||||||
RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x64-musl") \
|
|
||||||
&& nvm_get_arch() { echo "$NVM_MUSL_ARCH"; } \
|
|
||||||
&& nvm install $NODE_VERSION_LTS \
|
|
||||||
&& nvm alias default $NODE_VERSION_LTS \
|
|
||||||
&& nvm use default \
|
|
||||||
&& npm install -g pnpm \
|
|
||||||
&& pnpm -v \
|
&& pnpm -v \
|
||||||
&& pnpm config set unsafe-perm true
|
&& pnpm config set unsafe-perm true
|
||||||
|
|
||||||
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
|
||||||
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
|
||||||
|
|
||||||
# Set entrypoint to make nvm available in all runtime contexts
|
|
||||||
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
|
||||||
CMD ["bash"]
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ ENV NODE_VERSION_LTS="24.13.0" \
|
|||||||
# System packages (single layer)
|
# System packages (single layer)
|
||||||
# docker:latest already includes docker-cli and docker-compose plugin
|
# docker:latest already includes docker-cli and docker-compose plugin
|
||||||
RUN apk add --no-cache \
|
RUN apk add --no-cache \
|
||||||
bash curl git openssl ca-certificates wget unzip \
|
bash curl git openssl ca-certificates wget unzip jq \
|
||||||
build-base python3 python3-dev py3-pip linux-headers \
|
build-base python3 python3-dev py3-pip linux-headers \
|
||||||
libgcc libstdc++ libc6-compat gnupg \
|
libgcc libstdc++ libc6-compat gnupg \
|
||||||
libffi-dev openssl-dev libc-dev \
|
libffi-dev openssl-dev libc-dev \
|
||||||
@@ -54,7 +54,12 @@ RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x6
|
|||||||
&& nvm use default \
|
&& nvm use default \
|
||||||
&& npm install -g pnpm \
|
&& npm install -g pnpm \
|
||||||
&& pnpm -v \
|
&& pnpm -v \
|
||||||
&& pnpm config set unsafe-perm true
|
&& pnpm config set unsafe-perm true \
|
||||||
|
&& pnpm install -g @ship.zone/szci
|
||||||
|
|
||||||
|
# Install Rust
|
||||||
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||||
|
ENV PATH="/root/.cargo/bin:$PATH"
|
||||||
|
|
||||||
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
||||||
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
||||||
|
|||||||
@@ -28,9 +28,10 @@ RUN printf '%s\n%s\n%s\n' \
|
|||||||
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
'[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"' \
|
||||||
> /etc/bash.bashrc
|
> /etc/bash.bashrc
|
||||||
|
|
||||||
# Copy nvm wrapper for build-time SHELL
|
# Copy nvm wrapper scripts
|
||||||
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
COPY image_support_files/bash-with-nvm /usr/local/bin/bash-with-nvm
|
||||||
RUN chmod +x /usr/local/bin/bash-with-nvm
|
COPY image_support_files/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
||||||
|
RUN chmod +x /usr/local/bin/bash-with-nvm /usr/local/bin/docker-entrypoint.sh
|
||||||
|
|
||||||
# Use wrapper for RUN commands to enable nvm
|
# Use wrapper for RUN commands to enable nvm
|
||||||
SHELL ["/usr/local/bin/bash-with-nvm"]
|
SHELL ["/usr/local/bin/bash-with-nvm"]
|
||||||
@@ -52,10 +53,15 @@ RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x6
|
|||||||
&& nvm use default \
|
&& nvm use default \
|
||||||
&& npm install -g pnpm \
|
&& npm install -g pnpm \
|
||||||
&& pnpm -v \
|
&& pnpm -v \
|
||||||
&& pnpm config set unsafe-perm true
|
&& pnpm config set unsafe-perm true \
|
||||||
|
&& pnpm install -g @ship.zone/szci
|
||||||
|
|
||||||
|
# Install Rust
|
||||||
|
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
||||||
|
ENV PATH="/root/.cargo/bin:$PATH"
|
||||||
|
|
||||||
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
ENV NODE_PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/lib/node_modules
|
||||||
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
ENV PATH=$NVM_DIR/versions/node/v$NODE_VERSION_LTS/bin:$PATH
|
||||||
|
|
||||||
# Keep docker:dind's own ENTRYPOINT (dockerd-entrypoint.sh)
|
ENTRYPOINT ["/sbin/tini", "--", "/usr/local/bin/docker-entrypoint.sh"]
|
||||||
# NVM is available in exec shells via BASH_ENV
|
CMD ["bash"]
|
||||||
|
|||||||
@@ -1,3 +0,0 @@
|
|||||||
FROM host.today/ht-docker-node:dbase
|
|
||||||
LABEL author="Task Venture Capital GmbH <hello@task.vc>"
|
|
||||||
RUN pnpm install -g @ship.zone/szci
|
|
||||||
22
changelog.md
22
changelog.md
@@ -1,5 +1,27 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 2026-03-18 - 5.9.0 - feat(docker)
|
||||||
|
add a reusable Alpine base image and refactor Alpine variants to extend it
|
||||||
|
|
||||||
|
- introduces a new Dockerfile_alpine base image with NVM-managed Node.js for Alpine
|
||||||
|
- simplifies alpine-node, alpine-bun, and alpine-deno images by inheriting from the shared alpine base image
|
||||||
|
- adds jq to Debian and database images for improved shell tooling
|
||||||
|
- updates the release script to use verbose output and bumps @git.zone/tsdocker to ^2.1.0
|
||||||
|
|
||||||
|
## 2026-02-10 - 5.8.0 - feat(docker)
|
||||||
|
install Rust toolchain (rustup) and add aarch64 cross-compilation support to Docker images
|
||||||
|
|
||||||
|
- Install rustup and add /root/.cargo/bin to PATH in Dockerfile, Dockerfile_dbase, and Dockerfile_dbase_dind
|
||||||
|
- Add gcc-aarch64-linux-gnu package and run 'rustup target add aarch64-unknown-linux-gnu' in the main Dockerfile to enable cross-compilation
|
||||||
|
|
||||||
|
## 2026-02-07 - 5.7.0 - feat(docker)
|
||||||
|
install @ship.zone/szci in base images, add docker-entrypoint and use tini, remove deprecated Dockerfile_dbase_npmci, bump @git.zone/tsdocker devDependency to ^1.17.4
|
||||||
|
|
||||||
|
- Dockerfile_dbase: install @ship.zone/szci globally via pnpm
|
||||||
|
- Dockerfile_dbase_dind: add docker-entrypoint.sh and make it executable, consolidate chmod, set ENTRYPOINT to run tini with the new entrypoint and default CMD to ["bash"], and install @ship.zone/szci
|
||||||
|
- Remove Dockerfile_dbase_npmci (deleted)
|
||||||
|
- package.json: bump devDependency @git.zone/tsdocker from ^1.17.1 to ^1.17.4
|
||||||
|
|
||||||
## 2026-02-07 - 5.6.0 - feat(dockerfiles)
|
## 2026-02-07 - 5.6.0 - feat(dockerfiles)
|
||||||
Add base Dockerfiles for dbase/dind, enable pnpm and stack-fix, update preinstalled image tooling and registries, and bump @git.zone/tsdocker devDependency
|
Add base Dockerfiles for dbase/dind, enable pnpm and stack-fix, update preinstalled image tooling and registries, and bump @git.zone/tsdocker devDependency
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "ht-docker-node",
|
"name": "ht-docker-node",
|
||||||
"version": "5.6.0",
|
"version": "5.9.0",
|
||||||
"description": "A Docker image that integrates Node.js with shipzone.io support.",
|
"description": "A Docker image that integrates Node.js with shipzone.io support.",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "echo \"no npm test specified\"",
|
"test": "echo \"no npm test specified\"",
|
||||||
"build": "tsdocker build",
|
"build": "tsdocker build",
|
||||||
"release": "tsdocker push"
|
"release": "tsdocker push --verbose"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
@@ -35,6 +35,6 @@
|
|||||||
"typescript"
|
"typescript"
|
||||||
],
|
],
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@git.zone/tsdocker": "^1.17.1"
|
"@git.zone/tsdocker": "^2.1.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
492
pnpm-lock.yaml
generated
492
pnpm-lock.yaml
generated
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user