From 702c4fa53eeaecfa5563c1441cb4a0c4aa8e908e Mon Sep 17 00:00:00 2001 From: Guilhen <51724106+Guilhen@users.noreply.github.com> Date: Tue, 22 Sep 2020 11:48:44 -0700 Subject: [PATCH] adding the configuration to deploy yolov5 in in app engine (#964) * add the configuration to deploy yolov5 in a docker container in app engine on google cloud * remove the duplicated requirements, place the google app engine files in utils * remove the unused requirements Co-authored-by: guilhembau --- utils/google_app_engine/Dockerfile | 25 +++++++++++++++++++ .../additional_requirements.txt | 4 +++ utils/google_app_engine/app.yaml | 14 +++++++++++ 3 files changed, 43 insertions(+) create mode 100644 utils/google_app_engine/Dockerfile create mode 100644 utils/google_app_engine/additional_requirements.txt create mode 100644 utils/google_app_engine/app.yaml diff --git a/utils/google_app_engine/Dockerfile b/utils/google_app_engine/Dockerfile new file mode 100644 index 000000000000..0155618f4751 --- /dev/null +++ b/utils/google_app_engine/Dockerfile @@ -0,0 +1,25 @@ +FROM gcr.io/google-appengine/python + +# Create a virtualenv for dependencies. This isolates these packages from +# system-level packages. +# Use -p python3 or -p python3.7 to select python version. Default is version 2. +RUN virtualenv /env -p python3 + +# Setting these environment variables are the same as running +# source /env/bin/activate. +ENV VIRTUAL_ENV /env +ENV PATH /env/bin:$PATH + +RUN apt-get update && apt-get install -y python-opencv + +# Copy the application's requirements.txt and run pip to install all +# dependencies into the virtualenv. +ADD requirements.txt /app/requirements.txt +RUN pip install -r /app/requirements.txt + +# Add the application source code. +ADD . /app + +# Run a WSGI server to serve the application. gunicorn must be declared as +# a dependency in requirements.txt. +CMD gunicorn -b :$PORT main:app diff --git a/utils/google_app_engine/additional_requirements.txt b/utils/google_app_engine/additional_requirements.txt new file mode 100644 index 000000000000..5fcc30524a59 --- /dev/null +++ b/utils/google_app_engine/additional_requirements.txt @@ -0,0 +1,4 @@ +# add these requirements in your app on top of the existing ones +pip==18.1 +Flask==1.0.2 +gunicorn==19.9.0 diff --git a/utils/google_app_engine/app.yaml b/utils/google_app_engine/app.yaml new file mode 100644 index 000000000000..ac29d104b144 --- /dev/null +++ b/utils/google_app_engine/app.yaml @@ -0,0 +1,14 @@ +runtime: custom +env: flex + +service: yolov5app + +liveness_check: + initial_delay_sec: 600 + +manual_scaling: + instances: 1 +resources: + cpu: 1 + memory_gb: 4 + disk_size_gb: 20 \ No newline at end of file