aboutsummaryrefslogtreecommitdiffstats
path: root/web
diff options
context:
space:
mode:
Diffstat (limited to 'web')
-rw-r--r--web/Dockerfile29
-rwxr-xr-xweb/init.sh12
-rw-r--r--web/requirements.txt18
3 files changed, 36 insertions, 23 deletions
diff --git a/web/Dockerfile b/web/Dockerfile
index 228b0b0..a153192 100644
--- a/web/Dockerfile
+++ b/web/Dockerfile
@@ -1,7 +1,26 @@
+##############################################################################
+# Copyright (c) 2018 Trevor Bramwell and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+FROM node as static
+RUN npm install -g bower
+ADD src/static/ /static
+WORKDIR /static/
+RUN bower install --allow-root
+
FROM python:3.5
ENV PYTHONUNBUFFERED 1
-RUN mkdir /config
-ADD ./requirements.txt /config/
-RUN pip install -r /config/requirements.txt
-RUN mkdir -p /pharos_dashboard/src
-WORKDIR /pharos_dashboard/src
+
+ADD requirements.txt /requirements.txt
+RUN pip install -r /requirements.txt
+
+ADD web/init.sh /init.sh
+ADD src/ /pharos_dashboard/
+COPY --from=static /static/ pharos_dashboard/static/
+
+WORKDIR /pharos_dashboard/
+CMD ["/init.sh"]
diff --git a/web/init.sh b/web/init.sh
new file mode 100755
index 0000000..736acc1
--- /dev/null
+++ b/web/init.sh
@@ -0,0 +1,12 @@
+#!/bin/bash -e
+##############################################################################
+# Copyright (c) 2018 Trevor Bramwell and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+python manage.py migrate && \
+python manage.py collectstatic --no-input && \
+gunicorn pharos_dashboard.wsgi -b 0.0.0.0:8000
diff --git a/web/requirements.txt b/web/requirements.txt
deleted file mode 100644
index 19365bc..0000000
--- a/web/requirements.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-celery==3.1.23
-cryptography==2.3.1
-Django==1.10
-django-bootstrap3==7.0.1
-django-crispy-forms==1.6.0
-django-filter==0.14.0
-django-registration==2.1.2
-djangorestframework==3.4.6
-gunicorn==19.6.0
-jira==1.0.7
-jsonpickle==0.9.3
-oauth2==1.9.0.post1
-oauthlib==1.1.2
-pika==0.10.0
-psycopg2==2.6.2
-PyJWT==1.4.2
-requests==2.11.0
-django-fernet-fields==0.5