From 9b6036ce1715181596587fc677de1ae4b82426b4 Mon Sep 17 00:00:00 2001 From: Samsong Date: Thu, 16 Sep 2021 21:55:09 +0800 Subject: [PATCH 1/6] =?UTF-8?q?FIX=EF=BC=9A=E5=8D=87=E7=BA=A7python?= =?UTF-8?q?=E5=9F=BA=E7=A1=80=E9=95=9C=E5=83=8F=E4=B8=BApython:3.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 解决原基础镜像python:3.7升级后导致的Bug --- docker_env/celery/Dockerfile | 4 ++-- docker_env/django/Dockerfile | 4 ++-- dvadmin-backend/requirements.txt | 2 ++ 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/docker_env/celery/Dockerfile b/docker_env/celery/Dockerfile index 7428b9c..1730568 100644 --- a/docker_env/celery/Dockerfile +++ b/docker_env/celery/Dockerfile @@ -1,11 +1,11 @@ -FROM python:3.7 +FROM python:3.8 # ENV PYTHONUNBUFFERED 1 RUN sed -i s/deb.debian.org/mirrors.163.com/g /etc/apt/sources.list RUN cat /etc/apt/sources.list RUN apt-get clean RUN apt-get update RUN apt-get install -y build-essential -RUN apt-get install -y python3.7-dev libpq-dev libopencv-dev python-opencv +RUN apt-get install -y python3.8-dev libpq-dev libopencv-dev RUN apt-get install -y redis-tools RUN mkdir /dvadmin-backend WORKDIR /dvadmin-backend diff --git a/docker_env/django/Dockerfile b/docker_env/django/Dockerfile index 9ca8a18..ba6f053 100644 --- a/docker_env/django/Dockerfile +++ b/docker_env/django/Dockerfile @@ -1,11 +1,11 @@ -FROM python:3.7 +FROM python:3.8 # ENV PYTHONUNBUFFERED 1 RUN sed -i s/deb.debian.org/mirrors.163.com/g /etc/apt/sources.list RUN cat /etc/apt/sources.list RUN apt-get clean RUN apt-get update RUN apt-get install -y build-essential -RUN apt-get install -y python3.7-dev libpq-dev libopencv-dev python-opencv +RUN apt-get install -y python3.8-dev libpq-dev libopencv-dev RUN apt-get install -y redis-tools RUN mkdir /dvadmin-backend WORKDIR /dvadmin-backend diff --git a/dvadmin-backend/requirements.txt b/dvadmin-backend/requirements.txt index 596bc01..9b36e47 100644 --- a/dvadmin-backend/requirements.txt +++ b/dvadmin-backend/requirements.txt @@ -31,3 +31,5 @@ drf-yasg==1.20.0 daphne==3.0.2 channels==3.0.3 channels-redis==3.2.0 +opencv-python==4.5.3.56 + From c7a4324d67c1fbd18ab2bd9242356192665051a2 Mon Sep 17 00:00:00 2001 From: Samsong Date: Sat, 18 Sep 2021 14:53:58 +0800 Subject: [PATCH 2/6] =?UTF-8?q?FIX=EF=BC=9A=E4=BF=AE=E5=A4=8D.gitignore?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dvadmin-backend/.gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dvadmin-backend/.gitignore b/dvadmin-backend/.gitignore index 0bec1c6..a90cde3 100644 --- a/dvadmin-backend/.gitignore +++ b/dvadmin-backend/.gitignore @@ -89,7 +89,9 @@ ENV/ *.db .DS_Store __pycache__ +migrations/ !migrations/__init__.py *.pyc +conf/ !conf/env.example.py db.sqlite3 From 40f3c204a84b66d0c92e3b489e3a2f226c222871 Mon Sep 17 00:00:00 2001 From: Samsong Date: Sat, 18 Sep 2021 14:55:37 +0800 Subject: [PATCH 3/6] =?UTF-8?q?FIX=EF=BC=9A=E4=BF=AE=E5=A4=8D=E6=B8=85?= =?UTF-8?q?=E7=90=86=E7=9B=91=E6=8E=A7=E4=BF=A1=E6=81=AF=E7=9A=84=E5=AE=9A?= =?UTF-8?q?=E6=97=B6=E4=BB=BB=E5=8A=A1Bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dvadmin-backend/apps/vadmin/monitor/tasks.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/dvadmin-backend/apps/vadmin/monitor/tasks.py b/dvadmin-backend/apps/vadmin/monitor/tasks.py index fb78e54..a09aa8c 100644 --- a/dvadmin-backend/apps/vadmin/monitor/tasks.py +++ b/dvadmin-backend/apps/vadmin/monitor/tasks.py @@ -84,6 +84,7 @@ def clean_surplus_monitor_info(): :return: """ config_settings_obj = ConfigSettings.objects.filter(configKey='sys.monitor.info.save_days').first() - Monitor.objects.filter( - update_datetime__lt=datetime.timedelta(days=int(config_settings_obj.configValue or 30))).delete() + today = datetime.datetime.now().date() + clean_day_before = today - datetime.timedelta(days=int(config_settings_obj.configValue or 30)) + Monitor.objects.filter(update_datetime__lt=clean_day_before).delete() logger.info(f"成功清空{config_settings_obj.configValue}天前数据") From c217c8bd4e5153e37ee66471c6c9e252c288c702 Mon Sep 17 00:00:00 2001 From: David Date: Tue, 1 Mar 2022 09:57:00 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E8=B0=83=E6=95=B4nginx=E4=BB=A3=E7=90=86?= =?UTF-8?q?=E6=97=B6=E8=8E=B7=E5=8F=96=E7=9C=9F=E5=AE=9Eip=E7=9A=84?= =?UTF-8?q?=E4=BC=98=E5=85=88=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apps/vadmin/utils/request_util.py | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/dvadmin-backend/apps/vadmin/utils/request_util.py b/dvadmin-backend/apps/vadmin/utils/request_util.py index 1bdb709..8d7fba3 100644 --- a/dvadmin-backend/apps/vadmin/utils/request_util.py +++ b/dvadmin-backend/apps/vadmin/utils/request_util.py @@ -40,16 +40,14 @@ def get_request_ip(request): :param request: :return: """ - ip = getattr(request, 'request_ip', None) - if ip: - return ip - ip = request.META.get('REMOTE_ADDR', '') - if not ip: - x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR', '') - if x_forwarded_for: - ip = x_forwarded_for.split(',')[-1].strip() - else: - ip = 'unknown' + x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR', '') + if x_forwarded_for: + return x_forwarded_for.split(',')[-1].strip() + remote_addr = request.META.get('REMOTE_ADDR', '') + if remote_addr: + return remote_addr + ip = getattr(request, 'request_ip', 'unknown') + return ip From 9286a92dc48bd4264de22c8cb7a6ae1d8ee73383 Mon Sep 17 00:00:00 2001 From: kunwen01 Date: Thu, 24 Mar 2022 11:39:03 +0800 Subject: [PATCH 5/6] =?UTF-8?q?=E5=8D=87=E7=BA=A7Django=E5=88=B03.2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dvadmin-backend/apps/vadmin/op_drf/filters.py | 6 +++--- .../apps/vadmin/utils/authentication.py | 4 ++-- dvadmin-backend/requirements.txt | Bin 656 -> 3542 bytes 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dvadmin-backend/apps/vadmin/op_drf/filters.py b/dvadmin-backend/apps/vadmin/op_drf/filters.py index b250cd3..62b1b9b 100644 --- a/dvadmin-backend/apps/vadmin/op_drf/filters.py +++ b/dvadmin-backend/apps/vadmin/op_drf/filters.py @@ -6,7 +6,7 @@ import logging import operator from functools import reduce -from django.utils import six +# from django.utils import six from mongoengine.queryset import visitor from rest_framework.filters import BaseFilterBackend, SearchFilter, OrderingFilter @@ -34,7 +34,7 @@ class MongoSearchFilter(SearchFilter): if not search_fields or not search_terms: return queryset orm_lookups = [ - self.construct_search(six.text_type(search_field)) + self.construct_search(str(search_field)) for search_field in search_fields ] if not orm_lookups: @@ -67,7 +67,7 @@ class MongoOrderingFilter(OrderingFilter): ] else: valid_fields = [ - (item, item) if isinstance(item, six.string_types) else item + (item, item) if isinstance(item, str) else item for item in valid_fields ] diff --git a/dvadmin-backend/apps/vadmin/utils/authentication.py b/dvadmin-backend/apps/vadmin/utils/authentication.py index 3187058..2a61cb9 100644 --- a/dvadmin-backend/apps/vadmin/utils/authentication.py +++ b/dvadmin-backend/apps/vadmin/utils/authentication.py @@ -7,7 +7,7 @@ import jwt from django.conf import settings from django.contrib.auth import get_user_model from django.core.cache import cache -from django.utils.six import text_type +# from django.utils.six import text_type from django.utils.translation import ugettext as _ from rest_framework import exceptions from rest_framework_jwt.utils import jwt_decode_handler @@ -61,7 +61,7 @@ class OpAuthJwtAuthentication(object): :return: """ auth = request.META.get('HTTP_AUTHORIZATION', b'') - if isinstance(auth, text_type): + if isinstance(auth, str): auth = auth.encode(settings.JWT_AUTH.get('HTTP_HEADER_ENCODING', 'iso-8859-1')) if not auth: return '' diff --git a/dvadmin-backend/requirements.txt b/dvadmin-backend/requirements.txt index 9b36e47c9a4e1291e84df1d33f12c59cc0dd6f5b..a45bce646eb8059ee146e238eb8d8281c65d8af8 100644 GIT binary patch literal 3542 zcmZ{nOK%%T5QOI(AU|b^kg{d@kV62Uj07=Y136PmN}|n|m!$Rh@k#3I+ScsS5(q+q zx~IFky1Hld-@o&+D!bB^Wm)LAL-}2wX_=G@eW&Hu@=KYQP5EB-VR;*Wos{2t%c0!r z6sK>(&MADV{jqFITbgo|-$s7Ba?!<|{&YwM~JbBthhGSql%G*6N+vKZ}$TL@_?3%G>S3LsZjERV(OpvYWq;W%Dxqo zyXPqG-C|&A6s2mm(UefBr_A$_vwVJvst@WgHP3|sZC5=`V+zgS_$1n22ktI#rT$%c z#f)x^p9-zwgIIId%#2ydPL1=7RiBgi5+XbgLeyyL$cawxLpvyV6B%J~8Em4<+86ZX zT{q5tP?Z~@WgEaT{XT|5susNw-^DzQPv^#airhqiHTvXUleO-Z;n}R^=SosZ=;I~K zub*tBm-}85p2IpFio5m3zHzVVc7 zqNgCqyTe*atQ%E%(3@c`JFJ_#VMZ%p8}|vi!)ATdiP%No=)e!@?p&Qr4^{HL>~Dia zH1BU7>n?i*$Df3T7r;)lK+g9%O?9qoFP31DDd)wq(`PN-=o{YdH(dCR->XXACB(!I z7Dpr(h*AGm(Xo;T)OogAy`L6}h03iBb3XKL6)|u5+`3>f_D{<8vHVlML@v0j(+HB< zU9f<|84~H=icX(C>+@&C@cRlccZ(>A0KJ>tAMO8)9_5L zU-q5!YImjCzsuNCyv#c3m=_f{0sF>N;hjKFtW!@CU17gIM6LX7+P^PsVYadt^%iy2 zczlt*dCk|CMSU%sljFz(L_1-#qWAjA%fPBPqU^y@nEXG3F`LKig7=%%@%mi>PS*rh zcxS%H+BWM|eJA08E8b?@$ks|~c^HjN&(^utykf^T3-;beFHYixZZwK<+jn88iPSsY z%2xuDU9sGYDfnFoPu;{Y@isEtE4tqbnSa_(9Q8g3UHJ?7v2!e=Oi$} Q0{1KX*WCx7XPP+w0|#mee*gdg literal 656 zcmZuvJ8#1v5Z?JOAloEq7Pd~EGF0jqQTt+(5}@Eb++W}C>?Bg9j>p}7ufvw!WjYw6 zl~%QA$y1(;S*uE|#p}_AJ{r@gM%5e9&82K(E^;8-Q7*jqqN;mqzpU>+$&Sm`qazQ_ zkCgdw^&FQO@YKmnCB;z4m Date: Thu, 24 Mar 2022 12:40:45 +0800 Subject: [PATCH 6/6] =?UTF-8?q?requirements.txt=E5=86=85=E5=AE=B9=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dvadmin-backend/requirements.txt | Bin 3542 -> 1380 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/dvadmin-backend/requirements.txt b/dvadmin-backend/requirements.txt index a45bce646eb8059ee146e238eb8d8281c65d8af8..71f5d0e650daa8e16ea2ded23508abea78b408c7 100644 GIT binary patch delta 78 zcmV-U0I~np8{`TC|NfCaAd?gUAd`3jP?PEc9-~?V0+Y}M8k4XESd%OUbd#zFAd?IT kER$FWCX<{9GL!HK9+S!mK$EfxG?SbQJd^YcD3f#zG;6IJ@Bjb+ literal 3542 zcmZ{nOK%%T5QOI(AU|b^kg{d@kV62Uj07=Y136PmN}|n|m!$Rh@k#3I+ScsS5(q+q zx~IFky1Hld-@o&+D!bB^Wm)LAL-}2wX_=G@eW&Hu@=KYQP5EB-VR;*Wos{2t%c0!r z6sK>(&MADV{jqFITbgo|-$s7Ba?!<|{&YwM~JbBthhGSql%G*6N+vKZ}$TL@_?3%G>S3LsZjERV(OpvYWq;W%Dxqo zyXPqG-C|&A6s2mm(UefBr_A$_vwVJvst@WgHP3|sZC5=`V+zgS_$1n22ktI#rT$%c z#f)x^p9-zwgIIId%#2ydPL1=7RiBgi5+XbgLeyyL$cawxLpvyV6B%J~8Em4<+86ZX zT{q5tP?Z~@WgEaT{XT|5susNw-^DzQPv^#airhqiHTvXUleO-Z;n}R^=SosZ=;I~K zub*tBm-}85p2IpFio5m3zHzVVc7 zqNgCqyTe*atQ%E%(3@c`JFJ_#VMZ%p8}|vi!)ATdiP%No=)e!@?p&Qr4^{HL>~Dia zH1BU7>n?i*$Df3T7r;)lK+g9%O?9qoFP31DDd)wq(`PN-=o{YdH(dCR->XXACB(!I z7Dpr(h*AGm(Xo;T)OogAy`L6}h03iBb3XKL6)|u5+`3>f_D{<8vHVlML@v0j(+HB< zU9f<|84~H=icX(C>+@&C@cRlccZ(>A0KJ>tAMO8)9_5L zU-q5!YImjCzsuNCyv#c3m=_f{0sF>N;hjKFtW!@CU17gIM6LX7+P^PsVYadt^%iy2 zczlt*dCk|CMSU%sljFz(L_1-#qWAjA%fPBPqU^y@nEXG3F`LKig7=%%@%mi>PS*rh zcxS%H+BWM|eJA08E8b?@$ks|~c^HjN&(^utykf^T3-;beFHYixZZwK<+jn88iPSsY z%2xuDU9sGYDfnFoPu;{Y@isEtE4tqbnSa_(9Q8g3UHJ?7v2!e=Oi$} Q0{1KX*WCx7XPP+w0|#mee*gdg