Hexalixir / Dockerfile
Sergidev's picture
v1.1
fbbd444
raw
history blame
696 Bytes
# Dockerfile
FROM elixir:1.14-alpine
# Install build dependencies
RUN apk add --no-cache build-base npm git python3
# Install hex and rebar
RUN mix local.hex --force && \
mix local.rebar --force
# Set working directory
WORKDIR /app
# Create necessary directories
RUN mkdir -p priv/static/assets priv/static/images
# Copy mix files
COPY mix.exs mix.lock ./
# Install mix dependencies
RUN mix deps.get
# Copy assets
COPY assets assets
COPY priv priv
COPY config config
COPY lib lib
# Compile the project
RUN mix do compile
# Build assets
RUN cd assets && npm install && npm run deploy
RUN mix phx.digest
ENV MIX_ENV=prod
ENV PORT=7860
# Run the Phoenix app
CMD ["mix", "phx.server"]