From 604e3d7f546300d8a9ed6a7b3cb02fc2081ffd93 Mon Sep 17 00:00:00 2001 From: ricardocanela Date: Fri, 5 Apr 2019 10:32:41 -0300 Subject: [PATCH] dockerizando celery --- celery/celery_docker/Dockerfile | 33 +++++++++++++++++++++++++++++++++ celery/celery_start/start.sh | 9 +++++++++ docker-compose.yml | 14 +++++++++++--- requirements/requirements.txt | 4 +++- 4 files changed, 56 insertions(+), 4 deletions(-) create mode 100644 celery/celery_docker/Dockerfile create mode 100644 celery/celery_start/start.sh diff --git a/celery/celery_docker/Dockerfile b/celery/celery_docker/Dockerfile new file mode 100644 index 000000000..8ad561536 --- /dev/null +++ b/celery/celery_docker/Dockerfile @@ -0,0 +1,33 @@ +FROM alpine:3.8 + +ENV BUILD_PACKAGES postgresql-dev graphviz-dev graphviz build-base git pkgconfig \ + python3-dev libxml2-dev jpeg-dev libressl-dev libffi-dev libxslt-dev \ + nodejs py3-lxml py3-magic postgresql-client poppler-utils antiword \ + curl jq openssh-client vim openssh-client bash + +RUN apk update --update-cache && apk upgrade + +RUN apk --update add fontconfig ttf-dejavu && fc-cache -fv + +RUN apk add --no-cache python3 nginx tzdata && \ + python3 -m ensurepip && \ + rm -r /usr/lib/python*/ensurepip && \ + pip3 install --upgrade pip setuptools && \ + rm -r /root/.cache && \ + rm -f /etc/nginx/conf.d/* + +RUN mkdir -p /var/interlegis/sapl && \ + apk add --update --no-cache $BUILD_PACKAGES + +WORKDIR /var/interlegis/sapl/ + +ADD . /var/interlegis/sapl/ + +RUN pip install -r /var/interlegis/sapl/requirements/dev-requirements.txt --upgrade setuptools && \ + rm -r /root/.cache + +RUN rm -rf /var/interlegis/sapl/celery/celery_log/* + +RUN chmod +x /var/interlegis/sapl/celery/celery_start/start.sh + +CMD ["/var/interlegis/sapl/celery/celery_start/start.sh"] diff --git a/celery/celery_start/start.sh b/celery/celery_start/start.sh new file mode 100644 index 000000000..d57274551 --- /dev/null +++ b/celery/celery_start/start.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +celery multi start 2 -A sapl -l info -Q:1 email_queue -c:1 1 -Q:2 celery -c:2 1 --pidfile=./celery/celery_log/%n.pid --logfile=./celery/celery_log/%n%I.log + +echo "Celery started" + +while true; do sleep 2; done + +echo "Celery finished" diff --git a/docker-compose.yml b/docker-compose.yml index 1b8b72f3b..ca223aed4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,19 +9,20 @@ sapldb: volumes: - sapldb_data:/var/lib/postgresql/data/ ports: - - "5432:5432" + - "5433:5432" saplredis: image: redis:5.0.3-stretch restart: always ports: - "6379:6379" sapl: - image: interlegis/sapl:master + #image: interlegis/sapl:master + build: . restart: always environment: ADMIN_PASSWORD: interlegis ADMIN_EMAIL: email@dominio.net - DEBUG: 'False' + DEBUG: 'True' EMAIL_PORT: 587 EMAIL_USE_TLS: 'False' EMAIL_HOST: smtp.dominio.net @@ -40,3 +41,10 @@ sapl: - saplredis ports: - "80:80" +saplcelery: + build: . + dockerfile: ./celery/celery_docker/Dockerfile + environment: + CELERY_BROKER_URL: redis://saplredis:6379 + links: + - saplredis diff --git a/requirements/requirements.txt b/requirements/requirements.txt index b577734a6..c02762cc5 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -26,7 +26,9 @@ unipath==1.1 WeasyPrint==44 Pillow==5.1.0 gunicorn==19.9.0 -celery>=4.0,<4.1 +kombu==4.1.0 +billiard==3.5.0.2 +celery==4.1.0 celery-haystack==0.10 redis>=2.10.5,<2.11 django-celery-results==1.0.4