From 1c5d13bab2515e2ca2aeb295fd4d99d2d1c6a9d3 Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 17:48:34 -0500 Subject: [PATCH 1/6] another file to revert --- docker/Dockerfile | 101 ++++++++++++++++++---------------------------- 1 file changed, 39 insertions(+), 62 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 71958406..6ef4a101 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -26,18 +26,10 @@ RUN apt-get update && \ pip install --no-cache-dir -r requirements-sentence-transformers.txt && \ echo "installing sentence-transformers" && \ pip install sentence-transformers==3.4.1 && \ - python manage.py collectstatic --noinput || true && \ cd /app/frontend && \ npm install && \ npm run build && \ find . -maxdepth 1 ! -name '.' ! -name 'build' -exec rm -rf '{}' \; && \ - echo "Aggressively remove build-only packages and caches" && \ - apt-get purge -y \ - curl \ - gcc \ - git \ - nodejs \ - wget FROM python:3.13-slim @@ -46,63 +38,48 @@ ENV PATH="/dispatcharrpy/bin:$PATH" \ DJANGO_SETTINGS_MODULE=dispatcharr.settings \ PYTHONUNBUFFERED=1 +RUN apt-get update && \ + apt-get install -y --no-install-recommends \ + curl \ + ffmpeg \ + gnupg2 \ + gpg \ + libpq-dev \ + lsb-release \ + nginx \ + procps \ + streamlink \ + wget && \ + echo "=== setting up postgres ====" && \ + echo "deb http://apt.postgresql.org/pub/repos/apt/ bookworm-pgdg main" > /etc/apt/sources.list.d/pgdg.list && \ + wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - && \ + echo "=== setting up redis ===" && \ + curl -fsSL https://packages.redis.io/gpg | gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg && \ + chmod 644 /usr/share/keyrings/redis-archive-keyring.gpg && \ + echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list && \ + apt-get update && \ + apt-get install -y \ + postgresql-14 \ + postgresql-contrib-14 \ + redis-server && \ + mkdir /data && \ + apt-get remove -y \ + gnupg2 \ + gpg \ + lsb-release && \ + apt-get clean && \ + apt-get autoremove -y && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* + +COPY docker/nginx.conf /etc/nginx/sites-enabled/default + # Copy the virtual environment and application from the builder stage COPY --from=builder /dispatcharrpy /dispatcharrpy COPY --from=builder /app /app -RUN apt-get update && \ - apt-get install -y \ - curl \ - ffmpeg \ - gcc \ - git \ - gpg \ - libpq-dev \ - lsb-release \ - python3-virtualenv \ - streamlink - -RUN \ - curl -sL https://deb.nodesource.com/setup_23.x -o /tmp/nodesource_setup.sh && \ - bash /tmp/nodesource_setup.sh && \ - curl -fsSL https://packages.redis.io/gpg | gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg && \ - chmod 644 /usr/share/keyrings/redis-archive-keyring.gpg && \ - echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/redis.list && \ - cp /app/docker/nginx.conf /etc/nginx/sites-enabled/default && \ - apt-get update && \ - apt-get install -y redis - -RUN apt-get update && \ - apt-get install -y \ - nodejs \ - redis - -RUN \ - mkdir /data && \ - virtualenv /dispatcharrpy && \ - git clone https://github.com/Dispatcharr/Dispatcharr /app && \ - cd /app && \ - pip install --no-cache-dir -r requirements.txt && \ - cd /app/frontend && \ - npm install && \ - npm run build && \ - find . -maxdepth 1 ! -name '.' ! -name 'build' -exec rm -rf '{}' \; && \ - cd /app && \ - python manage.py collectstatic --noinput || true && \ - apt-get remove -y \ - gcc \ - git \ - gpg \ - libpq-dev \ - lsb-release \ - nodejs && \ - apt-get clean && \ - apt-get autoremove -y && \ - rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* - WORKDIR /app -CMD ["/app/docker/entrypoint.aio.sh"] +CMD ["/app/docker/entrypoint.sh"] From 87e5a6f27f353b3ee8ff89db70249658790462d9 Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 18:29:52 -0500 Subject: [PATCH 2/6] missing collectstatic --- docker/Dockerfile | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index 6ef4a101..e10c6c90 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -24,12 +24,13 @@ RUN apt-get update && \ pip install --no-cache-dir -r requirements.txt && \ pip install --no-cache-dir -r requirements-pytorch.txt && \ pip install --no-cache-dir -r requirements-sentence-transformers.txt && \ + python manage.py collectstatic && \ echo "installing sentence-transformers" && \ pip install sentence-transformers==3.4.1 && \ cd /app/frontend && \ npm install && \ npm run build && \ - find . -maxdepth 1 ! -name '.' ! -name 'build' -exec rm -rf '{}' \; && \ + find . -maxdepth 1 ! -name '.' ! -name 'build' -exec rm -rf '{}' \; FROM python:3.13-slim @@ -38,6 +39,10 @@ ENV PATH="/dispatcharrpy/bin:$PATH" \ DJANGO_SETTINGS_MODULE=dispatcharr.settings \ PYTHONUNBUFFERED=1 +# Copy the virtual environment and application from the builder stage +COPY --from=builder /dispatcharrpy /dispatcharrpy +COPY --from=builder /app /app + RUN apt-get update && \ apt-get install -y --no-install-recommends \ curl \ @@ -50,6 +55,7 @@ RUN apt-get update && \ procps \ streamlink \ wget && \ + cp /app/docker/nginx.conf /etc/nginx/sites-enabled/default && \ echo "=== setting up postgres ====" && \ echo "deb http://apt.postgresql.org/pub/repos/apt/ bookworm-pgdg main" > /etc/apt/sources.list.d/pgdg.list && \ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - && \ @@ -63,22 +69,16 @@ RUN apt-get update && \ postgresql-contrib-14 \ redis-server && \ mkdir /data && \ - apt-get remove -y \ - gnupg2 \ - gpg \ - lsb-release && \ - apt-get clean && \ - apt-get autoremove -y && \ - rm -rf \ - /tmp/* \ - /var/lib/apt/lists/* \ - /var/tmp/* - -COPY docker/nginx.conf /etc/nginx/sites-enabled/default - -# Copy the virtual environment and application from the builder stage -COPY --from=builder /dispatcharrpy /dispatcharrpy -COPY --from=builder /app /app + apt-get remove -y \ + gnupg2 \ + gpg \ + lsb-release && \ + apt-get clean && \ + apt-get autoremove -y && \ + rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* \ + /var/tmp/* WORKDIR /app From 7968ac7b32ccd63d62ef3d2272ec3e4f3ec7ac16 Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 18:32:06 -0500 Subject: [PATCH 3/6] more revertedf iles --- dispatcharr/settings.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dispatcharr/settings.py b/dispatcharr/settings.py index ab421fe7..bb4a7f4e 100644 --- a/dispatcharr/settings.py +++ b/dispatcharr/settings.py @@ -118,12 +118,11 @@ USE_I18N = True USE_TZ = True STATIC_URL = '/static/' -STATIC_ROOT = BASE_DIR / 'staticfiles' # Directory where static files will be collected +STATIC_ROOT = BASE_DIR / 'static' # Directory where static files will be collected # Adjust STATICFILES_DIRS to include the paths to the directories that contain your static files. STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'frontend/build/static'), # React build static files - BASE_DIR / 'static', # Django custom static files (if any) ] @@ -141,6 +140,7 @@ SERVER_IP = "127.0.0.1" CORS_ALLOW_ALL_ORIGINS = True CORS_ALLOW_CREDENTIALS = True +CSRF_TRUSTED_ORIGINS = ['*'] APPEND_SLASH = True REST_FRAMEWORK = { From 81728d346a3f44b3fdee223f2acbded9173e0e12 Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 18:39:38 -0500 Subject: [PATCH 4/6] updated aio with new values --- docker/docker-compose.aio.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/docker/docker-compose.aio.yml b/docker/docker-compose.aio.yml index 4b50884b..afed565d 100644 --- a/docker/docker-compose.aio.yml +++ b/docker/docker-compose.aio.yml @@ -1,15 +1,14 @@ services: dispatcharr: # build: - # context: .. - # dockerfile: docker/Dockerfile.alpine - image: dispatcharr/dispatcharr + # context: . + # dockerfile: Dockerfile + image: dekzter/dispactharr container_name: dispatcharr ports: - 9191:9191 volumes: - - /home/ghost/code/Dispatcharr/docker/entrypoint.sh:/app/docker/entrypoint.sh - # - dispatcharr_db:/app/data/db + - dispatcharr_db:/app/data/db environment: - DISPATCHARR_ENV=aio - REDIS_HOST=localhost From 59fd80bb8a557038cc1e95363b53560f8b07e2fe Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 18:44:23 -0500 Subject: [PATCH 5/6] ahhhhhhh --- docker/Dockerfile | 2 +- docker/entrypoint.sh | 7 ------- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/docker/Dockerfile b/docker/Dockerfile index e10c6c90..d9373c29 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -24,7 +24,7 @@ RUN apt-get update && \ pip install --no-cache-dir -r requirements.txt && \ pip install --no-cache-dir -r requirements-pytorch.txt && \ pip install --no-cache-dir -r requirements-sentence-transformers.txt && \ - python manage.py collectstatic && \ + python manage.py collectstatic --noinput && \ echo "installing sentence-transformers" && \ pip install sentence-transformers==3.4.1 && \ cd /app/frontend && \ diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index e3a1f7d5..76a2cb0c 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -198,13 +198,6 @@ fi cd /app echo_with_timestamp "Running Django commands..." python manage.py migrate --noinput || true -echo_with_timestamp "Checking if Django superuser exists..." -if ! python manage.py shell -c "from django.contrib.auth import get_user_model; exit(0) if get_user_model().objects.filter(username='${DJANGO_SUPERUSER_USERNAME}').exists() else exit(1)"; then - echo_with_timestamp "Superuser does not exist. Creating..." - python manage.py createsuperuser --noinput || true -else - echo_with_timestamp "Superuser already exists. Skipping creation." -fi # Always start Gunicorn echo "🚀 Starting Gunicorn..." From 79377c0d7f53c69ebdcf7a32cc9f5787fe6460ea Mon Sep 17 00:00:00 2001 From: dekzter Date: Mon, 3 Mar 2025 19:32:01 -0500 Subject: [PATCH 6/6] collecstatic isn't working in the dockerfile --- docker/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 76a2cb0c..f2a50231 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -198,6 +198,7 @@ fi cd /app echo_with_timestamp "Running Django commands..." python manage.py migrate --noinput || true +python manage.py collectstatic --noinput || true # Always start Gunicorn echo "🚀 Starting Gunicorn..."