diff --git a/docker/compose/docker-compose.yml b/docker/compose/docker-compose.yml index 31f6c8c6..9938eabc 100644 --- a/docker/compose/docker-compose.yml +++ b/docker/compose/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.9' services: main: build: - context: ../images/wait-for-postgres + context: ../images/main network: host ports: - '3000:3000' @@ -22,7 +22,7 @@ services: - automatisch_storage:/automatisch/storage worker: build: - context: ../images/plain + context: ../images/worker network: host depends_on: - main @@ -32,7 +32,6 @@ services: - POSTGRES_HOST=postgres - POSTGRES_DATABASE=automatisch - POSTGRES_USERNAME=automatisch_user - command: automatisch start-worker --env-file /automatisch/storage/.env volumes: - automatisch_storage:/automatisch/storage postgres: diff --git a/docker/images/wait-for-postgres/Dockerfile b/docker/images/main/Dockerfile similarity index 100% rename from docker/images/wait-for-postgres/Dockerfile rename to docker/images/main/Dockerfile diff --git a/docker/images/wait-for-postgres/wait-for-postgres.sh b/docker/images/main/wait-for-postgres.sh similarity index 78% rename from docker/images/wait-for-postgres/wait-for-postgres.sh rename to docker/images/main/wait-for-postgres.sh index 450fffec..bff10382 100644 --- a/docker/images/wait-for-postgres/wait-for-postgres.sh +++ b/docker/images/main/wait-for-postgres.sh @@ -3,7 +3,7 @@ set -e until psql -h "$POSTGRES_HOST" -U "$POSTGRES_USERNAME" -d "$POSTGRES_HOST" -c '\q'; do - >&2 echo "Postgres is unavailable - sleeping" + >&2 echo "Waiting for Postgres to be ready..." sleep 1 done diff --git a/docker/images/plain/Dockerfile b/docker/images/plain/Dockerfile deleted file mode 100644 index 48129e55..00000000 --- a/docker/images/plain/Dockerfile +++ /dev/null @@ -1,5 +0,0 @@ -# syntax=docker/dockerfile:1 -FROM node:16 -WORKDIR /automatisch - -RUN yarn global add @automatisch/cli@0.1.5 diff --git a/docker/images/worker/Dockerfile b/docker/images/worker/Dockerfile new file mode 100644 index 00000000..c6e40677 --- /dev/null +++ b/docker/images/worker/Dockerfile @@ -0,0 +1,10 @@ +# syntax=docker/dockerfile:1 +FROM node:16 +WORKDIR /automatisch + +RUN apt-get update && apt-get install -y postgresql-client + +COPY ./wait-for-postgres.sh /automatisch/wait-for-postgres.sh + +RUN yarn global add @automatisch/cli@0.1.5 +CMD sh /automatisch/wait-for-postgres.sh automatisch start-worker --env-file /automatisch/storage/.env diff --git a/docker/images/worker/wait-for-postgres.sh b/docker/images/worker/wait-for-postgres.sh new file mode 100644 index 00000000..bff10382 --- /dev/null +++ b/docker/images/worker/wait-for-postgres.sh @@ -0,0 +1,11 @@ +#!/bin/sh + +set -e + +until psql -h "$POSTGRES_HOST" -U "$POSTGRES_USERNAME" -d "$POSTGRES_HOST" -c '\q'; do + >&2 echo "Waiting for Postgres to be ready..." + sleep 1 +done + +>&2 echo "Postgres is up - executing command" +exec "$@"