49 lines
		
	
	
	
		
			997 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			997 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
FROM elixir:1.10.4-alpine AS elixir1
 | 
						|
 | 
						|
RUN apk add make gcc libc-dev
 | 
						|
 | 
						|
ENV CC=gcc
 | 
						|
ENV MIX_HOME=/opt/mix
 | 
						|
 | 
						|
RUN mix local.hex --force \
 | 
						|
  && mix local.rebar --force
 | 
						|
 | 
						|
EXPOSE 4000
 | 
						|
 | 
						|
ARG MIX_ENV=prod
 | 
						|
RUN echo ${MIX_ENV}
 | 
						|
ENV MIX_ENV=$MIX_ENV
 | 
						|
ENV PORT=4000
 | 
						|
 | 
						|
WORKDIR /root/app
 | 
						|
 | 
						|
ADD ./config /root/app/config
 | 
						|
ADD ./mix.exs /root/app/
 | 
						|
ADD ./mix.lock /root/app/
 | 
						|
ADD ./apps/admin/mix.exs /root/app/apps/admin/
 | 
						|
ADD ./apps/app/mix.exs /root/app/apps/app/
 | 
						|
ADD ./apps/content/mix.exs /root/app/apps/content/
 | 
						|
ADD ./apps/core/mix.exs /root/app/apps/core/
 | 
						|
ADD ./deps /root/app/deps
 | 
						|
RUN mix deps.get
 | 
						|
 | 
						|
ADD ./script /root/app/script
 | 
						|
ADD ./apps /root/app/apps
 | 
						|
 | 
						|
RUN MAKE=cmake mix compile
 | 
						|
 | 
						|
FROM node:15.0
 | 
						|
 | 
						|
WORKDIR /root/app/apps/app/assets/
 | 
						|
ADD ./apps/app/assets/node_modules /root/app/apps/app/assets/node_modules
 | 
						|
COPY --from=0 /root/app/ /root/app/
 | 
						|
RUN npm install
 | 
						|
RUN npm run deploy
 | 
						|
 | 
						|
FROM elixir1
 | 
						|
 | 
						|
COPY --from=1 /root/app/apps/app/priv/static/ /root/app/apps/app/priv/static
 | 
						|
 | 
						|
RUN mix phx.digest
 | 
						|
 | 
						|
CMD ["mix", "phx.server"]
 |