# syntax=docker/dockerfile:1

FROM ghcr.io/cirruslabs/flutter:stable AS build
WORKDIR /app

ARG PUB_HOSTED_URL=https://pub.flutter-io.cn
ARG FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
ENV PUB_HOSTED_URL=${PUB_HOSTED_URL}
ENV FLUTTER_STORAGE_BASE_URL=${FLUTTER_STORAGE_BASE_URL}

COPY . .
RUN flutter config --enable-web
RUN flutter pub get
RUN cd packages/unpuber_web \
    && flutter pub get \
    && flutter build web --release

FROM nginx:stable-alpine
COPY --from=build /app/packages/unpuber_web/build/web /usr/share/nginx/html
COPY packages/unpuber_web/docker/entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh

EXPOSE 80
ENV UNPUBER_API_BASE_URL=http://localhost:4000
ENTRYPOINT ["/entrypoint.sh"]
