mirror of
https://github.com/langgenius/dify.git
synced 2026-04-27 11:06:46 +08:00
chore: Harden API image Node.js runtime install (#30497)
This commit is contained in:
parent
a9e2c05a10
commit
de6262784c
@ -50,16 +50,33 @@ WORKDIR /app/api
|
|||||||
|
|
||||||
# Create non-root user
|
# Create non-root user
|
||||||
ARG dify_uid=1001
|
ARG dify_uid=1001
|
||||||
|
ARG NODE_MAJOR=22
|
||||||
|
ARG NODE_PACKAGE_VERSION=22.21.0-1nodesource1
|
||||||
|
ARG NODESOURCE_KEY_FPR=6F71F525282841EEDAF851B42F59B5F99B1BE0B4
|
||||||
RUN groupadd -r -g ${dify_uid} dify && \
|
RUN groupadd -r -g ${dify_uid} dify && \
|
||||||
useradd -r -u ${dify_uid} -g ${dify_uid} -s /bin/bash dify && \
|
useradd -r -u ${dify_uid} -g ${dify_uid} -s /bin/bash dify && \
|
||||||
chown -R dify:dify /app
|
chown -R dify:dify /app
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
apt-get update \
|
apt-get update \
|
||||||
|
&& apt-get install -y --no-install-recommends \
|
||||||
|
ca-certificates \
|
||||||
|
curl \
|
||||||
|
gnupg \
|
||||||
|
&& mkdir -p /etc/apt/keyrings \
|
||||||
|
&& curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key -o /tmp/nodesource.gpg \
|
||||||
|
&& gpg --show-keys --with-colons /tmp/nodesource.gpg \
|
||||||
|
| awk -F: '/^fpr:/ {print $10}' \
|
||||||
|
| grep -Fx "${NODESOURCE_KEY_FPR}" \
|
||||||
|
&& gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg /tmp/nodesource.gpg \
|
||||||
|
&& rm -f /tmp/nodesource.gpg \
|
||||||
|
&& echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_${NODE_MAJOR}.x nodistro main" \
|
||||||
|
> /etc/apt/sources.list.d/nodesource.list \
|
||||||
|
&& apt-get update \
|
||||||
# Install dependencies
|
# Install dependencies
|
||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
# basic environment
|
# basic environment
|
||||||
curl nodejs \
|
nodejs=${NODE_PACKAGE_VERSION} \
|
||||||
# for gmpy2 \
|
# for gmpy2 \
|
||||||
libgmp-dev libmpfr-dev libmpc-dev \
|
libgmp-dev libmpfr-dev libmpc-dev \
|
||||||
# For Security
|
# For Security
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user