From 60f04cfa933e7f0d399911e472fe357c13840d3a Mon Sep 17 00:00:00 2001 From: clemens Date: Thu, 11 Jan 2018 13:13:53 +0100 Subject: [PATCH] use postgres --- .gitignore | 2 ++ Dockerfile | 11 +++++++---- docker-compose.yml | 16 ++++++++++------ ofu_app/apps/food/models.py | 2 +- ofu_app/core/settings.py | 16 ++++++++++++---- ofu_app/requirements.txt | 9 +++++++-- sample.env | 7 +++++++ 7 files changed, 46 insertions(+), 17 deletions(-) create mode 100644 sample.env diff --git a/.gitignore b/.gitignore index 1c01507..226adbe 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +docker.env + # Created by https://www.gitignore.io/api/pycharm,python,django ### Django ### diff --git a/Dockerfile b/Dockerfile index e7f5742..336329f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,12 @@ FROM alpine:3.6 +ADD ["ofu_app/requirements.txt", "/requirements.txt"] RUN apk upgrade --update && \ - apk add --update python3 py3-pillow py3-lxml && \ - pip3 install django==1.11.7 django-jinja django-rest-framework django-analytical requests beautifulsoup4 -ADD ["ofu_app", "/app"] + apk add --update python3 py3-pillow py3-lxml py3-psycopg2 && \ + pip3 install -r /requirements.txt && rm /requirements.txt WORKDIR /app EXPOSE 80 VOLUME ["/data"] -CMD ["python3", "manage.py", "runserver", "0.0.0.0:80"] +VOLUME ["/app/media"] +ENTRYPOINT ["python3", "manage.py"] +ADD ["ofu_app", "/app"] +CMD ["runserver", "0.0.0.0:80"] diff --git a/docker-compose.yml b/docker-compose.yml index d27828c..a9e2b96 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,10 +4,14 @@ services: basta_server_web: image: docker.wiai.de/basta/server:0.1 build: . - ports: - - "8080:80" volumes: - - ./data:/data -# basta_server_db: -# image: postgres:alpine - + - ./data/data:/data + - ./data/media:/media + env_file: + - docker.env + basta_server_db: + image: postgres:10-alpine + volumes: + - ./data/pgdata/:/var/lib/postgresql/data/ + env_file: + - docker.env diff --git a/ofu_app/apps/food/models.py b/ofu_app/apps/food/models.py index 20e2fb0..618bf2a 100644 --- a/ofu_app/apps/food/models.py +++ b/ofu_app/apps/food/models.py @@ -12,7 +12,7 @@ from django.db import models from django.utils import timezone from django.utils.encoding import smart_text -MAX_LENGTH = 60 +MAX_LENGTH = 256 # Create your models here. diff --git a/ofu_app/core/settings.py b/ofu_app/core/settings.py index a41c593..d8a3752 100755 --- a/ofu_app/core/settings.py +++ b/ofu_app/core/settings.py @@ -19,11 +19,11 @@ BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/ # SECURITY WARNING: keep the secret key used in production secret! -SECRET_KEY = '7tm($-7tz!co8762!)ptmj%)80)qa^z0odee*8-!be!i(a!p4j' +SECRET_KEY = os.environ['SECRET_KEY'] # SECURITY WARNING: don't run with debug turned on in production! -DEBUG = True -ALLOWED_HOSTS = ['mg-server.ddns.net', 'localhost', '127.0.0.1', 'app.wiai.de'] +DEBUG = bool(os.environ.get('DEBUG', False)) +ALLOWED_HOSTS = os.environ['ALLOWED_HOSTS'].split() # Application definition @@ -96,8 +96,16 @@ WSGI_APPLICATION = 'core.wsgi.application' DATABASES = { 'default': { + 'ENGINE': 'django.db.backends.postgresql', + 'NAME': os.environ.get('POSTGRES_USER', ''), + 'USER': os.environ.get('POSTGRES_USER', ''), + 'PASSWORD': os.environ.get('POSTGRES_PASSWORD', ''), + 'HOST': os.environ.get('DATABASE_HOST', ''), + 'PORT': os.environ.get('DATABASE_PORT', ''), + }, + 'dev': { 'ENGINE': 'django.db.backends.sqlite3', - 'NAME': os.path.join('/data', 'db.sqlite3'), + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), } } diff --git a/ofu_app/requirements.txt b/ofu_app/requirements.txt index 6e5370e..d5894d0 100644 --- a/ofu_app/requirements.txt +++ b/ofu_app/requirements.txt @@ -1,2 +1,7 @@ -django -djangorestframework +django==1.11.7 +django-jinja +django-rest-framework +django-analytical +requests +beautifulsoup4 +#psycopg2 \ No newline at end of file diff --git a/sample.env b/sample.env new file mode 100644 index 0000000..38f6d66 --- /dev/null +++ b/sample.env @@ -0,0 +1,7 @@ +SECRET_KEY='rjpmgfärjgmgfo4565tr45z'ü+fdig95ld05jger' +ALLOWED_HOSTS=ofu.uni-bamberg.de +DATABASE_HOST=basta_server_db +DATABASE_PORT=5432 +DATABASE_NAME=ofu_app +DATABASE_USER=ufu_app +DATABASE_PASSWD=