Fix error when running make / docker-compose up

This fixes an error when running the mobilizon_api container (either
with `make` or `docker-compose up`): the command `mix phx.server`
was run first in the mobilizon_api container, but it
made the container restart every ~10 seconds because of missing
dependencies errors. As a result it became impossible to install
the depencies using
`docker-compose exec api sh -c "cd js && yarn install && cd ../"`,
because that would give this error:
`Error response from daemon: Container
8ff288ad74565bb0773f9b5f8fb39ab62925c16ea0ca77c5d2579cc3013a8464 is
restarting, wait until the container is running`.

This commit fixes this error by running the dependency installation
commands (and compilation and db migration) before `mix phx.server`.
This commit is contained in:
JohanBaskovec 2019-10-22 22:16:18 +02:00
parent 88777d415e
commit 4c48cb8ea9
2 changed files with 9 additions and 6 deletions

View File

@ -5,11 +5,6 @@ init:
start: stop start: stop
@bash docker/message.sh "starting Mobilizon with docker" @bash docker/message.sh "starting Mobilizon with docker"
docker-compose up -d api docker-compose up -d api
docker-compose exec api sh -c "cd js && yarn install && cd ../"
docker-compose exec api mix deps.get
docker-compose exec api mix compile
docker-compose exec api mix ecto.create
docker-compose exec api mix ecto.migrate
@bash docker/message.sh "started" @bash docker/message.sh "started"
stop: stop:
@bash docker/message.sh "stopping Mobilizon" @bash docker/message.sh "stopping Mobilizon"

View File

@ -30,7 +30,15 @@ services:
MOBILIZON_DATABASE_USERNAME: postgres MOBILIZON_DATABASE_USERNAME: postgres
MOBILIZON_DATABASE_DBNAME: mobilizon_dev MOBILIZON_DATABASE_DBNAME: mobilizon_dev
MOBILIZON_DATABASE_HOST: postgres MOBILIZON_DATABASE_HOST: postgres
command: "mix phx.server" command: >
sh -c "cd js &&
yarn install &&
cd ../ &&
mix deps.get &&
mix compile &&
mix ecto.create &&
mix ecto.migrate &&
mix phx.server"
volumes: volumes:
pgdata: pgdata:
.: .: