mirror of https://gitlab.federez.net/re2o/re2o
Browse Source
Dockerfile and docker-compose files are now included in directory. They start a db, migrate, create a superuser if it doesn't already exists and start the serverfix_mandate_history
4 changed files with 164 additions and 0 deletions
@ -0,0 +1,12 @@ |
|||
FROM python:3 |
|||
ENV PYTHONUNBUFFERED=1 |
|||
RUN apt-get update && apt-get install -y --no-install-recommends gettext-base libpq-dev |
|||
WORKDIR /code |
|||
COPY requirements.txt /code/ |
|||
COPY postgresql-requirements.txt /code/ |
|||
COPY dev-requirements.txt /code/ |
|||
RUN pip install -r requirements.txt |
|||
RUN pip install -r postgresql-requirements.txt |
|||
RUN pip install -r dev-requirements.txt |
|||
COPY . /code/ |
|||
CMD ./docker/docker-entrypoint.sh |
|||
@ -0,0 +1,31 @@ |
|||
version: "3" |
|||
|
|||
volumes: |
|||
database_data: |
|||
driver: local |
|||
|
|||
services: |
|||
db: |
|||
image: postgres:latest |
|||
volumes: |
|||
- database_data:/var/lib/postgresql/data |
|||
environment: |
|||
- POSTGRES_DB=postgres |
|||
- POSTGRES_USER=postgres |
|||
- POSTGRES_PASSWORD=postgres |
|||
|
|||
re2o: |
|||
build: . |
|||
volumes: |
|||
- .:/code |
|||
ports: |
|||
- "8000:8000" |
|||
depends_on: |
|||
- db |
|||
environment: |
|||
- POSTGRES_DB=postgres |
|||
- POSTGRES_USER=postgres |
|||
- POSTGRES_PASSWORD=postgres |
|||
- SUPERUSER_LOGIN=admin |
|||
- SUPERUSER_PASS=admin |
|||
- SUPERUSER_EMAIL=admin@example.net |
|||
@ -0,0 +1,20 @@ |
|||
#!/usr/bin/env bash |
|||
set -euo pipefail |
|||
|
|||
cat docker/settings_local.template.py | envsubst > re2o/settings_local.py |
|||
|
|||
AUTOMIGRATE=${AUTOMIGRATE:-yes} |
|||
|
|||
if [ "$AUTOMIGRATE" != "skip" ]; then |
|||
python3 manage.py migrate --noinput |
|||
fi |
|||
|
|||
cat <<EOF | python manage.py shell |
|||
from django.contrib.auth import get_user_model |
|||
|
|||
User = get_user_model() |
|||
|
|||
User.objects.filter(pseudo='$SUPERUSER_LOGIN').exists() or \ |
|||
User.objects.create_superuser(pseudo='$SUPERUSER_LOGIN', email='$SUPERUSER_EMAIL', password='$SUPERUSER_PASS', surname='$SUPERUSER_LOGIN') |
|||
EOF |
|||
python manage.py runserver 0.0.0.0:8000 |
|||
@ -0,0 +1,101 @@ |
|||
# coding: utf-8 |
|||
# Re2o est un logiciel d'administration développé initiallement au rezometz. Il |
|||
# se veut agnostique au réseau considéré, de manière à être installable en |
|||
# quelques clics. |
|||
# |
|||
# Copyright © 2017 Gabriel Détraz |
|||
# Copyright © 2017 Lara Kermarec |
|||
# Copyright © 2017 Augustin Lemesle |
|||
# |
|||
# This program is free software; you can redistribute it and/or modify |
|||
# it under the terms of the GNU General Public License as published by |
|||
# the Free Software Foundation; either version 2 of the License, or |
|||
# (at your option) any later version. |
|||
# |
|||
# This program is distributed in the hope that it will be useful, |
|||
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License along |
|||
# with this program; if not, write to the Free Software Foundation, Inc., |
|||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
|||
"""re2o.settings_locale |
|||
The file with all the available options for a locale configuration of re2o |
|||
""" |
|||
|
|||
from __future__ import unicode_literals |
|||
|
|||
# A secret key used by the server. |
|||
SECRET_KEY = "=0u1d+gi6r06+r4gmrtdg6dhsi0mc7v39a37di4m5cfqt2aro2" |
|||
|
|||
# AES key for secret key encryption. |
|||
# The length must be a multiple of 16 |
|||
AES_KEY = "gnbe3elnujzlspzkavgdmqho16zizvek" |
|||
|
|||
# Should the server run in debug mode ? |
|||
# SECURITY WARNING: don't run with debug turned on in production! |
|||
DEBUG = True |
|||
|
|||
# A list of admins of the services. Receive mails when an error occurs |
|||
ADMINS = [("Example", "admin@example.net")] |
|||
|
|||
# The list of hostname the server will respond to. |
|||
ALLOWED_HOSTS = ["*"] |
|||
|
|||
# The time zone the server is runned in |
|||
TIME_ZONE = "Europe/Paris" |
|||
|
|||
# The storage systems parameters to use |
|||
DATABASES = { |
|||
'default': { |
|||
'ENGINE': 'django.db.backends.postgresql', |
|||
'NAME': '${POSTGRES_DB}', |
|||
'USER': '${POSTGRES_USER}', |
|||
'PASSWORD': '${POSTGRES_PASSWORD}', |
|||
'HOST': 'db', |
|||
} |
|||
} |
|||
|
|||
# Security settings for secure https |
|||
# Activate once https is correctly configured |
|||
SECURE_CONTENT_TYPE_NOSNIFF = False |
|||
SECURE_BROWSER_XSS_FILTER = False |
|||
SESSION_COOKIE_SECURE = False |
|||
CSRF_COOKIE_SECURE = False |
|||
CSRF_COOKIE_HTTPONLY = False |
|||
X_FRAME_OPTIONS = "DENY" |
|||
SESSION_COOKIE_AGE = 60 * 60 * 3 |
|||
|
|||
# The path where your organization logo is stored |
|||
LOGO_PATH = "static_files/logo.png" |
|||
|
|||
# The mail configuration for Re2o to send mails |
|||
SERVER_EMAIL = "no-reply@example.net" # The mail address to use |
|||
EMAIL_HOST = "example.net" # The host to use |
|||
# EMAIL_PORT = MY_EMAIL_PORT # The port to use |
|||
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' |
|||
|
|||
# Add statiffiles dir that were installed using system packaging |
|||
# Example to reproduce re2o2.9 behavior |
|||
# SYSTEM_STATICFILES_DIRS = ("/usr/share/fonts-font-awesome/", "/usr/share/javascript/") |
|||
SYSTEM_STATICFILES_DIRS = () |
|||
|
|||
# Wether to use CDN to retrieve bootstrap, font-aweseome and jquery files |
|||
# Default to False |
|||
USE_CDN = True |
|||
|
|||
# A range of UID to use. Used in linux environement |
|||
UID_RANGES = {"users": [21001, 30000], "service-users": [20000, 21000]} |
|||
|
|||
# A range of GID to use. Used in linux environement |
|||
GID_RANGES = {"posix": [501, 600]} |
|||
|
|||
# Default gid |
|||
DEFAULT_GID = 500 |
|||
|
|||
# Some optionnal Re2o Apps |
|||
OPTIONNAL_APPS_RE2O = () |
|||
|
|||
# Some Django apps you want to add in you local project |
|||
OPTIONNAL_APPS = OPTIONNAL_APPS_RE2O + () |
|||
Loading…
Reference in new issue