feat(docker): install Rust toolchain (rustup) and add aarch64 cross-compilation support to Docker images
This commit is contained in:
@@ -30,6 +30,7 @@ RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selectio
|
|||||||
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 +133,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"]
|
||||||
|
|||||||
@@ -57,6 +57,10 @@ RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x6
|
|||||||
&& pnpm config set unsafe-perm true \
|
&& pnpm config set unsafe-perm true \
|
||||||
&& pnpm install -g @ship.zone/szci
|
&& 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
|
||||||
|
|
||||||
|
|||||||
@@ -56,6 +56,10 @@ RUN NVM_MUSL_ARCH=$([ "$TARGETARCH" = "arm64" ] && echo "arm64-musl" || echo "x6
|
|||||||
&& pnpm config set unsafe-perm true \
|
&& pnpm config set unsafe-perm true \
|
||||||
&& pnpm install -g @ship.zone/szci
|
&& 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
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 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)
|
## 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
|
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
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user