Spaces:
Running
Running
Commit
·
a3c7ac0
1
Parent(s):
8b5825a
Deploy Signal Generator app
Browse files- Dockerfile +4 -0
- src/db/local_database.py +12 -5
Dockerfile
CHANGED
|
@@ -32,6 +32,10 @@ RUN chmod +x entrypoint.sh
|
|
| 32 |
|
| 33 |
# Create a non-root user (Hugging Face Spaces runs as user 1000)
|
| 34 |
RUN useradd -m -u 1000 user
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
USER user
|
| 36 |
ENV HOME=/home/user \
|
| 37 |
PATH=/home/user/.local/bin:$PATH
|
|
|
|
| 32 |
|
| 33 |
# Create a non-root user (Hugging Face Spaces runs as user 1000)
|
| 34 |
RUN useradd -m -u 1000 user
|
| 35 |
+
|
| 36 |
+
# Sets permissions for the app directory so the user can write (e.g. database dir)
|
| 37 |
+
RUN chown -R user:user /app
|
| 38 |
+
|
| 39 |
USER user
|
| 40 |
ENV HOME=/home/user \
|
| 41 |
PATH=/home/user/.local/bin:$PATH
|
src/db/local_database.py
CHANGED
|
@@ -92,11 +92,18 @@ class LocalDatabase:
|
|
| 92 |
compress: Whether to compress JSON files with gzip
|
| 93 |
"""
|
| 94 |
self.db_dir = Path(db_dir)
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 100 |
|
| 101 |
# Load environment variables
|
| 102 |
from dotenv import load_dotenv
|
|
|
|
| 92 |
compress: Whether to compress JSON files with gzip
|
| 93 |
"""
|
| 94 |
self.db_dir = Path(db_dir)
|
| 95 |
+
try:
|
| 96 |
+
self.db_dir.mkdir(exist_ok=True)
|
| 97 |
+
self.data_dir = self.db_dir / "data"
|
| 98 |
+
self.data_dir.mkdir(exist_ok=True)
|
| 99 |
+
except (PermissionError, OSError) as e:
|
| 100 |
+
print(f"⚠️ Error creating database dir at {self.db_dir}: {e}")
|
| 101 |
+
import tempfile
|
| 102 |
+
self.db_dir = Path(tempfile.gettempdir()) / "gotti_database"
|
| 103 |
+
print(f"⚠️ Falling back to temporary directory: {self.db_dir}")
|
| 104 |
+
self.db_dir.mkdir(exist_ok=True)
|
| 105 |
+
self.data_dir = self.db_dir / "data"
|
| 106 |
+
self.data_dir.mkdir(exist_ok=True)
|
| 107 |
|
| 108 |
# Load environment variables
|
| 109 |
from dotenv import load_dotenv
|