From fecafc15eef44b844d3252a807f6cdcc9f7ed32a Mon Sep 17 00:00:00 2001 From: chelsea Date: Sun, 12 Oct 2025 23:43:42 +0000 Subject: [PATCH] fixed file permission error causing reboot loop MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit d 2025-10-12 23:40:33,603 - apscheduler.scheduler - INFO - Scheduler started 2025-10-12 23:40:33,605 - polling_service - INFO - Polling scheduler started 2025-10-12 23:40:33,605 - apscheduler.scheduler - INFO - Added job "Check and poll sources" to job store "default" 2025-10-12 23:40:33,606 - polling_service - INFO - Poll checker job scheduled 2025-10-12 23:40:33,610 - filter_pipeline.config - INFO - Loaded filter config from filter_config.json 2025-10-12 23:40:33,610 - filter_pipeline.config - INFO - Loaded 5 filtersets from filtersets.json Traceback (most recent call last): File "", line 198, in _run_module_as_main File "", line 88, in _run_code File "/usr/local/lib/python3.12/site-packages/flask/__main__.py", line 3, in main() File "/usr/local/lib/python3.12/site-packages/flask/cli.py", line 1131, in main cli.main() File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1383, in main rv = self.invoke(ctx) ^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1850, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/click/core.py", line 1246, in invoke return ctx.invoke(self.callback, **ctx.params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/click/core.py", line 814, in invoke return callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/click/decorators.py", line 93, in new_func return ctx.invoke(f, obj, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/click/core.py", line 814, in invoke return callback(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/flask/cli.py", line 979, in run_command raise e from None File "/usr/local/lib/python3.12/site-packages/flask/cli.py", line 963, in run_command app: WSGIApplication = info.load_app() # pyright: ignore ^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/flask/cli.py", line 349, in load_app app = locate_app(import_name, name) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/site-packages/flask/cli.py", line 245, in locate_app __import__(module_name) File "/app/app.py", line 91, in ✓ Database tables created filter_engine = FilterEngine.get_instance() ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/filter_pipeline/engine.py", line 55, in get_instance cls._instance = cls() ^^^^^ File "/app/filter_pipeline/engine.py", line 43, in __init__ self.cache = FilterCache(self.config.get_cache_dir()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/app/filter_pipeline/cache.py", line 28, in __init__ self.cache_dir.mkdir(parents=True, exist_ok=True) File "/usr/local/lib/python3.12/pathlib.py", line 1311, in mkdir os.mkdir(self, mode) PermissionError: [Errno 13] Permission denied: 'data/filter_cach --- docker-compose.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 44c21d2..e57ee5a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -48,8 +48,9 @@ services: AUTH0_CLIENT_SECRET: ${AUTH0_CLIENT_SECRET:-} AUTH0_AUDIENCE: ${AUTH0_AUDIENCE:-} volumes: - # Persistent data storage - - ./data:/app/data + # Application-managed data (using a named volume) + - app_data:/app/data + # User-editable content (using bind mounts) - ./static:/app/static - ./backups:/app/backups - ./active_html:/app/active_html @@ -71,4 +72,5 @@ networks: driver: bridge volumes: - postgres_data: \ No newline at end of file + postgres_data: + app_data: # <-- New named volume declared here \ No newline at end of file