Created
March 11, 2019 03:55
-
-
Save gjaldon/0ab3af766208126410bbbfaecc0f9f4e to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# client/Dockerfile | |
FROM node:6.9.5-alpine | |
RUN apk --update add git openssh build-base python | |
RUN npm install -g webpack | |
ADD package.json /tmp/package.json | |
RUN cd /tmp && npm install | |
RUN mkdir /client/ && cp -a /tmp/node_modules /client/ | |
WORKDIR /client/ | |
ADD . /client/ | |
EXPOSE 3000 | |
CMD ["npm", "run", "start"] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# server/Dockerfile | |
FROM alpine:3.5 | |
RUN apk --update add erlang && rm -rf /var/cache/apk/* | |
ENV ELIXIR_VERSION 1.4.0 | |
RUN apk --update add --virtual build-dependencies wget ca-certificates && \ | |
wget --no-check-certificate https://github.com/elixir-lang/elixir/releases/download/v${ELIXIR_VERSION}/Precompiled.zip && \ | |
mkdir -p /opt/elixir-${ELIXIR_VERSION}/ && \ | |
unzip Precompiled.zip -d /opt/elixir-${ELIXIR_VERSION}/ && \ | |
rm Precompiled.zip && \ | |
apk del build-dependencies && \ | |
rm -rf /etc/ssl && \ | |
rm -rf /var/cache/apk/* | |
ENV PATH $PATH:/opt/elixir-${ELIXIR_VERSION}/bin | |
RUN mkdir /server && chmod -R 777 /server && \ | |
apk --no-cache add git build-base \ | |
erlang-dev erlang-parsetools erlang-syntax-tools \ | |
erlang-xmerl erlang-ssl erlang-inets erlang-public-key erlang-edoc \ | |
erlang-eunit erlang-tools erlang-common-test erlang-crypto erlang-asn1 && \ | |
mix local.hex --force && mix local.rebar --force | |
ADD . /server/ | |
WORKDIR /server/ | |
RUN mix do deps.get, compile | |
CMD ["mix", "phoenix.server"] |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '2' | |
services: | |
api: | |
build: server/ | |
env_file: | |
- secrets.env | |
command: mix phoenix.server | |
volumes: | |
- ./server/:/server | |
- /server/deps | |
- /server/_build | |
ports: | |
- "4000:4000" | |
depends_on: | |
- db | |
- rabbitmq | |
- client | |
client: | |
build: client/ | |
command: npm run start | |
volumes: | |
- ./client/:/client | |
- /client/node_modules | |
ports: | |
- "3000:3000" | |
- "35729:35729" | |
db: | |
image: postgres:9.4.10-alpine | |
environment: | |
POSTGRES_PASSWORD: postgres | |
POSTGRES_USER: postgres | |
rabbitmq: | |
image: rabbitmq:3.6-management | |
ports: | |
- "5672:5672" | |
- "15672:15672" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment