Skip to content

Commit

Permalink
created docker image for django-angular-demo (websockets dysfunctional)
Browse files Browse the repository at this point in the history
  • Loading branch information
jrief committed Jun 27, 2017
1 parent efd4d9d commit 794dcff
Show file tree
Hide file tree
Showing 6 changed files with 24 additions and 8 deletions.
12 changes: 9 additions & 3 deletions Dockerfile
Expand Up @@ -10,8 +10,13 @@ COPY docker-files/redis.conf /etc/redis.conf
RUN chown redis.redis /etc/uwsgi.d/redis.ini
RUN chown -R redis.redis /web/redis

RUN useradd -M -d /web -g uwsgi -s /bin/bash django

# install the basic Django package
RUN useradd -M -d /web -s /bin/bash django
RUN echo 2 | alternatives --config python
RUN python -V
RUN pip install --upgrade pip
# RUN pip install --force-reinstall uwsgi
RUN pip install django==1.10.7

# copy the local django-angular file into a temporary folder
Expand All @@ -29,7 +34,8 @@ RUN rm -rf /tmp/django-angular
RUN mkdir -p /web/workdir/{media,static}
ADD examples/server /web/django-angular-demo/server
ADD client /web/django-angular-demo/client
COPY docker-files/wsgi.py /web/django-angular-demo/wsgi.py
COPY docker-files/wsgi_runserver.py /web/django-angular-demo/wsgi_runserver.py
COPY docker-files/wsgi_websocket.py /web/django-angular-demo/wsgi_websocket.py
COPY examples/manage.py /web/django-angular-demo/manage.py
COPY examples/package.json /web/django-angular-demo/package.json
COPY examples/requirements.txt /tmp/requirements.txt
Expand All @@ -49,7 +55,7 @@ RUN ln -s /web/workdir/uwsgi-runserver.ini /etc/uwsgi.d/djangular-runserver.ini

# collect static files
RUN CLIENT_SRC_DIR=/web/django-angular-demo/client/src NODE_MODULES_DIR=/web/django-angular-demo/node_modules DJANGO_STATIC_ROOT=/web/workdir/static ./manage.py collectstatic --noinput
RUN chown -R django.django /web/{logs,workdir}
RUN chown -R django.uwsgi /web/{logs,workdir}

# share media files
VOLUME /web/workdir/media
Expand Down
4 changes: 4 additions & 0 deletions docker-files/uwsgi-emperor.ini
Expand Up @@ -8,4 +8,8 @@ stats = /run/uwsgi/stats.sock
emperor-tyrant = true
cap = setgid,setuid
die-on-term = true
offload-threads = 1
logto = /web/logs/uwsgi.log
http-socket = :9002
route = ^/ws uwsgi:/web/workdir/web.socket,0,0
route = ^/ uwsgi:/web/workdir/django.socket,0,0
6 changes: 3 additions & 3 deletions docker-files/uwsgi-runserver.ini
@@ -1,10 +1,10 @@
[uwsgi]
plugins = python3, logfile
plugins = python, logfile
chdir = /web/django-angular-demo
umask = 002
http-socket = :9002
socket = /web/workdir/django.socket
env = DJANGO_SETTINGS_MODULE=server.settings
module = wsgi:application
module = wsgi_runserver:application
buffer-size = 32768
env = DJANGO_STATIC_ROOT=/web/workdir/static
static-map = /static=/web/workdir/static
Expand Down
5 changes: 3 additions & 2 deletions docker-files/uwsgi-websocket.ini
@@ -1,8 +1,9 @@
[uwsgi]
umask = 002
plugins = python3, gevent, greenlet, logfile
plugins = python, gevent, greenlet, logfile
chdir = /web/django-angular-demo
env = DJANGO_SETTINGS_MODULE=server.settings
socket = /web/workdir/web.socket
http-socket = /web/workdir/web.socket
module = wsgi_websocket:application
processes = 1
offload-threads = 2
Expand Down
File renamed without changes.
5 changes: 5 additions & 0 deletions docker-files/wsgi_websocket.py
@@ -0,0 +1,5 @@
import gevent.socket
import redis.connection
redis.connection.socket = gevent.socket
from ws4redis.uwsgi_runserver import uWSGIWebsocketServer
application = uWSGIWebsocketServer()

0 comments on commit 794dcff

Please sign in to comment.