diff --git a/professor-api/Dockerfile b/professor-api/Dockerfile new file mode 100644 index 0000000..92de004 --- /dev/null +++ b/professor-api/Dockerfile @@ -0,0 +1,18 @@ +FROM alpine:3.14 +# dependencies needed for compiling c extensions +# also busybox-extras for telnet for easier use of backdoor +RUN apk --update add py3-pip g++ python3-dev libffi-dev musl-dev postgresql-dev file make busybox-extras + +# Install gevent so that we don't need to re-install it when common changes +RUN pip install gevent + +# Install common lib first as it changes less +COPY common /tmp/common +RUN pip install /tmp/common && rm -r /tmp/common + +# Install actual application +RUN apk add postgresql-dev postgresql-libs +COPY professor-api /tmp/professor-api +RUN pip install /tmp/professor-api && rm -r /tmp/professor-api + +ENTRYPOINT ["python3", "-m", "professor_api"] diff --git a/professor-api/setup.py b/professor-api/setup.py new file mode 100644 index 0000000..76c476d --- /dev/null +++ b/professor-api/setup.py @@ -0,0 +1,16 @@ +from setuptools import setup, find_packages + +setup( + name = "wubloader-professor-api", + version = "0.0.0", + packages = find_packages(), + install_requires = [ + "argh", + "psycopg2", + "gevent", + "psycogreen", + "wubloader-common", + "python-dateutil", + "flask" + ], +)