diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..af0869c --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM elixir:1.9 + +RUN mix local.hex --force && mix local.rebar --force + +WORKDIR /app + +COPY mix.exs mix.lock ./ +RUN mix do deps.get, deps.compile + +COPY . ./ +RUN mix compile + +CMD ./start.sh diff --git a/config/dev.exs b/config/dev.exs index 149b105..1a754d7 100644 --- a/config/dev.exs +++ b/config/dev.exs @@ -42,7 +42,7 @@ config :eventstore, EventStore.Storage, username: "postgres", password: "postgres", database: "conduit_eventstore_dev", - hostname: "localhost", + hostname: "eventstore", pool_size: 10 # Configure the read store database @@ -51,5 +51,5 @@ config :conduit, Conduit.Repo, username: "postgres", password: "postgres", database: "conduit_readstore_dev", - hostname: "localhost", + hostname: "readstore", pool_size: 10 diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..f189064 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,16 @@ +version: '3' + +services: + app: + build: . + depends_on: + - eventstore + - readstore + ports: + - 4000:4000 + + eventstore: + image: postgres + + readstore: + image: postgres diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..9005f9b --- /dev/null +++ b/start.sh @@ -0,0 +1,5 @@ +#!/usr/bin/env bash + +mix do event_store.create, event_store.init +mix do ecto.create, ecto.migrate +mix phx.server