From 82a10b10fb8179f71f9278f4d120822fea99a814 Mon Sep 17 00:00:00 2001 From: Dmitriy Shesterkin Date: Fri, 5 May 2017 01:40:59 +0300 Subject: [PATCH] return chmod dir for nginx --- conf/nginx.stage.conf.template | 0 docker-compose.stage.yml | 69 ++++++++++++++++++++++++++++++++ src/docs/views/base_views.py | 2 +- src/dokumentor/settings/stage.py | 33 +++++++++++++++ 4 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 conf/nginx.stage.conf.template create mode 100644 docker-compose.stage.yml create mode 100644 src/dokumentor/settings/stage.py diff --git a/conf/nginx.stage.conf.template b/conf/nginx.stage.conf.template new file mode 100644 index 0000000..e69de29 diff --git a/docker-compose.stage.yml b/docker-compose.stage.yml new file mode 100644 index 0000000..ee96dc6 --- /dev/null +++ b/docker-compose.stage.yml @@ -0,0 +1,69 @@ +version: '2' +services: + + db: + restart: always + image: postgres + environment: + POSTGRES_USER: 'dokumentor' + POSTGRES_PASSWORD: 'dokumentor' + volumes: + - ./data:/var/lib/postgresql/data + + rabbitmq: + restart: always + image: rabbitmq:latest + environment: + RABBITMQ_DEFAULT_USER: 'dokumentor' + RABBITMQ_DEFAULT_PASS: 'dokumentor' + ports: + - "8080:15672" + - "5672:5672" + - "5671:5671" + + celery: + restart: always + build: + context: . + dockerfile: compose/Dockerfile.web.local + command: bash -c 'cd src && celery -A dokumentor worker -l info -E' + volumes: + - .:/code + env_file: conf/env + environment: + DJANGO_DB: 'postgres://dokumentor:dokumentor@db:5432/dokumentor' + REDIS_URL: 'redis://redis:6379/1' + CELERY_BROKER_URL: 'amqp://dokumentor:dokumentor@rabbitmq:5672//' + CELERY_RESULT_BACKEND: 'amqp://dokumentor:dokumentor@rabbitmq:5672//' + links: + - db + - rabbitmq + - redis + + redis: + restart: always + image: redis:latest + ports: + - '6379:6379' + + web: + restart: always + build: + context: . + dockerfile: compose/Dockerfile.web.local + command: bash -c 'python src/manage.py runserver 0.0.0.0:8000' + volumes: + - .:/code + entrypoint: bin/docker-local-entrypoint.sh + ports: + - "8000:8000" + env_file: conf/env + environment: + DJANGO_DB: 'postgres://dokumentor:dokumentor@db:5432/dokumentor' + REDIS_URL: 'redis://redis:6379/1' + CELERY_BROKER_URL: 'amqp://dokumentor:dokumentor@rabbitmq:5672//' + CELERY_RESULT_BACKEND: 'amqp://dokumentor:dokumentor@rabbitmq:5672//' + depends_on: + - db + - rabbitmq + - redis diff --git a/src/docs/views/base_views.py b/src/docs/views/base_views.py index c3c0ce8..48fe1ea 100644 --- a/src/docs/views/base_views.py +++ b/src/docs/views/base_views.py @@ -404,7 +404,7 @@ class BaseViews(object): os.makedirs(tmp_media_dir) tmp_dir = tempfile.mkdtemp(dir=tmp_media_dir) - # os.chmod(tmp_dir, 755) # TODO: check on ubuntu + os.chmod(tmp_dir, 755) tmp_dirname = os.path.split(tmp_dir)[1] f = open(filename, 'wb') diff --git a/src/dokumentor/settings/stage.py b/src/dokumentor/settings/stage.py new file mode 100644 index 0000000..5933629 --- /dev/null +++ b/src/dokumentor/settings/stage.py @@ -0,0 +1,33 @@ +# coding: utf-8 + +import dj_database_url + +from dokumentor.settings.base import * + +DEBUG = False + +ADMINS = [] + +MANAGERS = ADMINS + +ALLOWED_HOSTS = ['dokumentor.ru'] + +DATABASES = { + 'default': dj_database_url.parse(e.get('DJANGO_DB')), +} + + +# Wrap loaders in cached loader # TODO: check, not start in stage +# TEMPLATES[0]['OPTIONS']['loaders'] = [ +# ('django.template.loaders.cached.Loader', TEMPLATES[0]['OPTIONS']['loaders']), +# ] + +DEFAULT_FROM_EMAIL = e.get('DJANGO_FROM_EMAIL') +SERVER_EMAIL = DEFAULT_FROM_EMAIL +EMAIL_HOST = e.get('DJANGO_EMAIL_HOST') +EMAIL_PORT = e.get('DJANGO_EMAIL_PORT') +EMAIL_HOST_USER = e.get('DJANGO_EMAIL_USER') +EMAIL_HOST_PASSWORD = e.get('DJANGO_EMAIL_PASSWORD') +EMAIL_USE_TLS = e.get('DJANGO_EMAIL_USE_TLS') +EMAIL_USE_SSL = e.get('DJANGO_EMAIL_USE_SSL') +EMAIL_SUBJECT_PREFIX = 'dokumentor '