Make container more robust #95
+2
-5
@@ -11,14 +11,11 @@ PGID=100
|
|||||||
# External port mapping
|
# External port mapping
|
||||||
TIMETRACKER_EXTERNAL_PORT=8000
|
TIMETRACKER_EXTERNAL_PORT=8000
|
||||||
|
|
||||||
# Data storage path
|
|
||||||
DOCKER_STORAGE_PATH=/tmp
|
|
||||||
|
|
||||||
# Django production mode (set to "1" for production)
|
# Django production mode (set to "1" for production)
|
||||||
PROD=1
|
PROD=1
|
||||||
|
|
||||||
# Database directory (overrides default in settings.py)
|
# Database directory (defaults to project root)
|
||||||
DATA_DIR=/home/timetracker/data
|
DATA_DIR=/home/timetracker/app/data
|
||||||
|
|
||||||
# CSRF trusted origins
|
# CSRF trusted origins
|
||||||
CSRF_TRUSTED_ORIGINS=https://tracker.kucharczyk.xyz
|
CSRF_TRUSTED_ORIGINS=https://tracker.kucharczyk.xyz
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ __pycache__
|
|||||||
node_modules
|
node_modules
|
||||||
package-lock.json
|
package-lock.json
|
||||||
db.sqlite3
|
db.sqlite3
|
||||||
|
data/
|
||||||
/static/
|
/static/
|
||||||
dist/
|
dist/
|
||||||
.DS_Store
|
.DS_Store
|
||||||
|
|||||||
+2
-1
@@ -11,10 +11,11 @@ services:
|
|||||||
- CSRF_TRUSTED_ORIGINS=https://tracker.kucharczyk.xyz
|
- CSRF_TRUSTED_ORIGINS=https://tracker.kucharczyk.xyz
|
||||||
- PUID=${PUID:-1000}
|
- PUID=${PUID:-1000}
|
||||||
- PGID=${PGID:-100}
|
- PGID=${PGID:-100}
|
||||||
|
- DATA_DIR=${DATA_DIR:-/home/timetracker/app/data}
|
||||||
ports:
|
ports:
|
||||||
- "${TIMETRACKER_EXTERNAL_PORT:-8000}:8000"
|
- "${TIMETRACKER_EXTERNAL_PORT:-8000}:8000"
|
||||||
volumes:
|
volumes:
|
||||||
- "${DOCKER_STORAGE_PATH:-/tmp}/timetracker/data:/home/timetracker/data"
|
- "./data:/home/timetracker/app/data"
|
||||||
- "${DOCKER_STORAGE_PATH:-/tmp}/timetracker/backups:/home/timetracker/app/games/fixtures/backups"
|
- "${DOCKER_STORAGE_PATH:-/tmp}/timetracker/backups:/home/timetracker/app/games/fixtures/backups"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -10,11 +10,11 @@ groupmod -o -g "$PGID" timetracker
|
|||||||
usermod -o -u "$PUID" timetracker
|
usermod -o -u "$PUID" timetracker
|
||||||
usermod -d "${USERHOME}" timetracker
|
usermod -d "${USERHOME}" timetracker
|
||||||
|
|
||||||
mkdir -p /home/timetracker/data /var/log/supervisor
|
mkdir -p /home/timetracker/app/data /var/log/supervisor
|
||||||
chmod 755 /home/timetracker/app
|
chmod 755 /home/timetracker/app
|
||||||
chmod 755 /home/timetracker/app/.venv
|
chmod 755 /home/timetracker/app/.venv
|
||||||
|
|
||||||
chown "$PUID:$PGID" /home/timetracker/data
|
chown "$PUID:$PGID" /home/timetracker/app/data
|
||||||
chown "$PUID:$PGID" /var/log/supervisor
|
chown "$PUID:$PGID" /var/log/supervisor
|
||||||
|
|
||||||
python manage.py migrate
|
python manage.py migrate
|
||||||
|
|||||||
@@ -110,7 +110,7 @@ WSGI_APPLICATION = "timetracker.wsgi.application"
|
|||||||
DATABASES = {
|
DATABASES = {
|
||||||
"default": {
|
"default": {
|
||||||
"ENGINE": "django.db.backends.sqlite3",
|
"ENGINE": "django.db.backends.sqlite3",
|
||||||
"NAME": Path(os.environ.get("DATA_DIR", "/home/timetracker/data")) / "db.sqlite3",
|
"NAME": Path(os.environ.get("DATA_DIR", str(BASE_DIR))) / "db.sqlite3",
|
||||||
"OPTIONS": {
|
"OPTIONS": {
|
||||||
"timeout": 20,
|
"timeout": 20,
|
||||||
"init_command": "PRAGMA synchronous=FULL; PRAGMA journal_mode=WAL;",
|
"init_command": "PRAGMA synchronous=FULL; PRAGMA journal_mode=WAL;",
|
||||||
|
|||||||
Reference in New Issue
Block a user