FROM python:3.6 RUN apt-get install curl RUN curl -sL https://deb.nodesource.com/setup_6.x | bash - RUN apt-get install -y nodejs RUN mkdir /code WORKDIR /code RUN mkdir requirements ADD bikeshop_project /code ADD requirements/base.txt /code/requirements/base.txt ADD requirements/testing.txt /code/requirements/testing.txt ADD requirements/production.txt /code/requirements/production.txt COPY production.py /code/bikeshop/settings RUN pip install -r requirements/production.txt RUN npm cache clean ADD ./bikeshop_project/bower.json bower.json RUN npm install --unsafe-perm -g bower RUN bower install --allow-root ADD ./bikeshop_project/package.json package.json RUN npm install --unsafe-perm RUN npm run build-production RUN DJANGO_SETTINGS_MODULE=bikeshop.settings.production python manage.py test CMD 'bash -c "PYTHONUNBUFFERED=TRUE python manage.py migrate --no-input && python manage.py collectstatic --no-input && python manage.py rebuild_index --noinput && gunicorn --log-file=- -b 0.0.0.0:8000 bikeshop.wsgi:application"' EXPOSE 8000