FROM ruby:2.6.1-alpine3.9 AS gemfiles

# ビルドに必要なパッケージをインストールする
RUN apk add --no-cache \
        build-base \
        mariadb-connector-c-dev

WORKDIR /app

# Gemをインストールする
COPY Gemfile Gemfile.lock ./
RUN bundle install && \
    rm -rf "${GEM_HOME}/cache"


FROM ruby:2.6.1-alpine3.9 AS fonts

WORKDIR /tmp

# 日本語フォント（IPAexフォント）を準備する
ENV zip_basename=IPAexfont00301
RUN wget -q https://oscdl.ipa.go.jp/IPAexfont/${zip_basename}.zip

RUN unzip ${zip_basename}.zip && \
    mv ${zip_basename} IPAexfont


FROM ruby:2.6.1-alpine3.9

# パッケージをインストールする
RUN apk add --no-cache \
        mariadb-connector-c
RUN apk add --no-cache \
        wkhtmltopdf

# フォントをインストールする
COPY --from=fonts /tmp/IPAexfont/*.ttf /usr/share/fonts/TTF/
RUN fc-cache

# Gemのファイルを持ってくる
COPY --from=gemfiles /usr/local/bundle/ /usr/local/bundle/

WORKDIR /app

# アプリケーションをコピーする
COPY . ./
CMD ["ruby", "app.rb"]
