diff --git a/.gitignore b/.gitignore index 599be4e..f054737 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,5 @@ *.ez /build erl_crash.dump + +.envrc diff --git a/Dockerfile b/Dockerfile index 8d966bc..6e00ada 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,19 +1,19 @@ -ARG GLEAM_VERSION=v1.18.1 ARG ERLANG_VERSION=29 +ARG GLEAM_VERSION=v1.18.1 -# builder stage FROM ghcr.io/gleam-lang/gleam:${GLEAM_VERSION}-scratch as gleam -FROM docker.io/erlang:${ERLANG_VERSION}-alpine as builder + +FROM docker.io/erlang:${ERLANG_VERSION}-alpine AS builder COPY --from=gleam /bin/gleam /bin/gleam +COPY . /server/ -COPY . /app/ -WORKDIR /app +WORKDIR /server RUN gleam export erlang-shipment -# production -FROM docker.io/erlang:${ERLANG_VERSION}-alpine -COPY --from=builder /app/build/erlang-shipment /app +FROM ghcr.io/gleam-lang/gleam:${GLEAM_VERSION}-erlang-alpine as runner +COPY --from=builder /server/build/erlang-shipment /app +EXPOSE 8000 WORKDIR /app -ENTRYPOINT ["/app/entrypoint.sh"] +ENTRYPOINT ["sh", "./entrypoint.sh"] CMD ["run"] diff --git a/docker-compose.yaml b/docker-compose.yaml index c797ae7..af9f8df 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -26,3 +26,4 @@ services: condition: service_healthy environment: DATABASE_URL: ${DATABASE_URL} + SECRET_KEY: ${SECRET_KEY} diff --git a/justfile b/justfile index 745a288..5237b5a 100644 --- a/justfile +++ b/justfile @@ -20,4 +20,14 @@ lint: # Build container [group("docker")] build: - docker build -t backend . + docker build --no-cache -t backend:latest . + +clear-container: + docker container rm backend + +[group("docker")] +run-server: + docker run --rm \ + -e DATABASE_URL=${DATABASE_URL} -e SECRET_KEY=${SECRET_KEY} \ + -p "8000:8000" \ + backend