/

RubyとNode.jsのマルチステージビルドイメージを作る

RubyとNode.jsのマルチステージビルドのDockerイメージを作る方法です。

# レポジトリのクローン
$ git clone https://github.com/syagawa/ruby-nodejs-multi-stage-build.git
$ cd ruby-nodejs-multi-stage-build

# build
$ docker compose -f compose.yml build

# 起動
$ docker compose -f compose.yml up -d

2025/7/8時点の最新コミットのDockerfileは下記となります。 RubyやNode.jsのバージョンを変えたい場合は書き換えて使用してください。

FROM node:22.15-bookworm-slim AS build-node-modules
WORKDIR /app
RUN npm install -g npm@latest

FROM ruby:3.4.3-slim-bookworm
WORKDIR /app

RUN apt-get update -qq && apt-get install -y build-essential libpq-dev
RUN apt-get install -y curl unzip wget vim git

COPY --from=build-node-modules /usr/local /usr/local

ENTRYPOINT ["/app/entrypoint.sh"]

追記

  • 2025/7/8 Dockerfileの内容を追加

以上。