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の内容を追加
以上。