This repository has been archived on 2024-06-24. You can view files and clone it, but cannot push or open issues or pull requests.
augie/webapp/Dockerfile.template

43 lines
1.5 KiB
Docker
Raw Normal View History

2020-04-28 21:09:54 +12:00
FROM registry.gitlab.com/jimsy/balena-elixir/%%BALENA_MACHINE_NAME%%-debian-build:1.10-latest as elixir
RUN install_packages libraspberrypi0 libraspberrypi-bin build-essential libraspberrypi-dev raspberrypi-kernel-headers
RUN mix local.hex --force
RUN mix local.rebar --force
ENV MIX_ENV=prod
FROM elixir as deps
COPY mix.exs mix.lock /app/
2019-11-29 17:55:52 +13:00
WORKDIR /app
RUN mix deps.get
RUN mix deps.compile
2019-11-29 17:55:52 +13:00
2020-04-28 21:09:54 +12:00
FROM balenalib/%%BALENA_MACHINE_NAME%%-debian-node:latest-build as assets
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
RUN install_packages yarn
COPY --from=deps /app/deps/phoenix /app/deps/phoenix
COPY --from=deps /app/deps/phoenix_html /app/deps/phoenix_html
COPY --from=deps /app/deps/phoenix_live_view /app/deps/phoenix_live_view
COPY assets /app/assets
WORKDIR /app/assets
RUN yarn install --ignore-optional --non-interactive --frozen-lockfile
RUN yarn run deploy
2019-11-29 17:55:52 +13:00
FROM elixir as releaser
COPY --from=deps /app /app
COPY config /app/config
COPY lib /app/lib
COPY priv /app/priv
COPY rel /app/rel
2019-11-29 17:55:52 +13:00
COPY --from=assets /app/priv/static /app/priv/static
WORKDIR /app
ENV SECRET_KEY_BASE=not-actually-used-at-runtime
2019-11-29 17:55:52 +13:00
RUN mix phx.digest
RUN mix release --overwrite
2019-11-29 17:55:52 +13:00
FROM balenalib/%%BALENA_MACHINE_NAME%%-debian
RUN install_packages libraspberrypi0 libraspberrypi-bin
2019-11-29 17:55:52 +13:00
ENV ERL_CRASH_DUMP_BYTES=0
COPY --from=releaser /app/_build/prod/rel/augie /app
WORKDIR /app
CMD /app/bin/augie start