diff --git a/Dockerfile b/Dockerfile index a1b43e8f..a7fad48f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,13 @@ -FROM centos:7 - -MAINTAINER OSU Open Source Lab, support@osuosl.org +FROM osuosl/python_webapp +RUN sed -i 's/WSGIPATH/ganeti_webmgr.ganeti_web/g' /etc/supervisor.d/app.conf +COPY . /opt/app/src +RUN yum install -y openssl-devel +RUN pip install . -EXPOSE 8000 ENV DJANGO_SETTINGS_MODULE ganeti_webmgr.ganeti_web.settings -# allows developer to set up a volume mount by keeping config out of source dir -ENV GWM_CONFIG_DIR /opt/ganeti_webmgr_config - -RUN yum install -y python-devel python-setuptools postgresql-devel gcc curl libffi-devel openssl-devel - -RUN easy_install pip - -WORKDIR /opt/ganeti_webmgr -COPY . /opt/ganeti_webmgr +# set up config file COPY ./ganeti_webmgr/ganeti_web/settings/config.yml.dist /opt/ganeti_webmgr_config/config.yml # Keys generated specifically for Docker @@ -23,8 +16,8 @@ RUN echo "DEBUG: true" >> /opt/ganeti_webmgr_config/config.yml RUN echo "SECRET_KEY: \"f4iIZ1CTjeLvL3LEhf7m2TnhmIgmeOi1ZuooQ7OOdY\"" >> /opt/ganeti_webmgr_config/config.yml RUN echo "WEB_MGR_API_KEY: \"Sfi7l83bjlGyYUBF4pIp/2vumfwPA+Lwz2ztu32LQ2k\"" >> /opt/ganeti_webmgr_config/config.yml -RUN pip install . -RUN django-admin.py syncdb --noinput -RUN django-admin.py syncdb --migrate --noinput + +RUN django-admin.py collectstatic --noinput --settings "ganeti_webmgr.ganeti_web.settings" +RUN django-admin.py syncdb --noinput --settings "ganeti_webmgr.ganeti_web.settings" + RUN echo "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'admin@example.com', 'password')" | django-admin.py shell -CMD ["django-admin.py", "runserver", "0.0.0.0:8000"] \ No newline at end of file