# Copyright 2022 The Flutter Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# Dart Docker official images can be found here: https://hub.docker.com/_/dart
FROM dart:3.7.1

# Packages are PATH dependencies of app_dart, and need to be copied/accessible.
WORKDIR /packages
COPY packages .

WORKDIR /app

# Copy app source code (except anything in .dockerignore).
COPY auto_submit .
RUN dart pub get

# Start server.
EXPOSE 8080
CMD ["/usr/lib/dart/bin/dart", "/app/bin/server.dart"]
