diff --git a/CHANGELOG.md b/CHANGELOG.md index dbee0196495..320bf2afa4c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ - Enhance: センシティブメディアの判定を外部サービス ([sensitive-detector](https://github.com/misskey-dev/sensitive-detector)) に分離し、`nsfwjs` / `@tensorflow/tfjs(-node)` の同梱と NSFW 判定モデルを廃止 (#16804) - Enhance: Node.js 22.23.0以降、24.17.0以降、26.4.0以降をサポートするように - Enhance: Docker Image の Node.js を 26.4.0 に、Debian を trixie (v13) に更新 +- Enhance: Docker Image のサイズを削減 - Fix: `/stats` API のレスポンス型が正しくない問題を修正 ## 2026.6.0 diff --git a/Dockerfile b/Dockerfile index 2823c2cd393..adc28fcfe2d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,6 +2,9 @@ ARG NODE_VERSION=26.4.0-trixie +# Get static binary of ffmpeg +FROM mwader/static-ffmpeg:8.1 AS ffmpeg-bin + # build assets & compile TypeScript FROM --platform=$BUILDPLATFORM node:${NODE_VERSION} AS native-builder @@ -78,7 +81,7 @@ ENV PNPM_CONFIG_VERIFY_DEPS_BEFORE_RUN=false RUN apt-get update \ && apt-get install -y --no-install-recommends \ - ffmpeg tini curl libjemalloc-dev libjemalloc2 \ + tini curl libjemalloc-dev libjemalloc2 \ && ln -s /usr/lib/$(uname -m)-linux-gnu/libjemalloc.so.2 /usr/local/lib/libjemalloc.so \ && groupadd -g "${GID}" misskey \ && useradd -l -u "${UID}" -g "${GID}" -m -d /misskey misskey \ @@ -87,6 +90,9 @@ RUN apt-get update \ && apt-get clean \ && rm -rf /var/lib/apt/lists +COPY --from=ffmpeg-bin /ffmpeg /usr/local/bin/ +COPY --from=ffmpeg-bin /ffprobe /usr/local/bin/ + # add package.json to add pnpm COPY ./package.json ./package.json RUN node -e "console.log(JSON.parse(require('node:fs').readFileSync('./package.json')).packageManager)" | xargs npm install -g