我尝试在docker中部署我的Django项目和芹菜,我想使用redis作为后端的结果.
Django版本1.11.3芹菜版本4.1.0
我的docker-compose.yml如下:
python:
image: python:latest
restart: always
expose:
- "8000"
volumes:
- ~/django/902Scratch/API:/home/django/API
- /var/sb2_files:/var/sb2_files
- /home/tuopinpin/JudgeServer/tests/test_case:/test_case
links:
- celery:celery
command: bash -c " cd /home/django/API && python manage.py runserver 0.0.0.0:8000"
ports:
- "0.0.0.0:8000:8000"
celery:
image: python:latest
restart: always
volumes:
- ~/django/902Scratch/API:/home/django/API
- /var/sb2_files:/var/sb2_files
user: nobody
depends_on:
- redis
links:
- redis:redis
command: bash -c " cd /home/django/API && celery -A API worker"
redis:
image: redis:alpine
restart: always
expose:
- '6379'
ports:
- '6379:6379'
Run Code Online (Sandbox Code Playgroud)
django的芹菜设置如下:
CELERY_BROKER_URL = 'redis://redis:6379/0'
CELERY_BROKER_TRANSPORT …Run Code Online (Sandbox Code Playgroud) 升级到新的google-api-python-client1.8.1 后,我收到此错误。我们知道 python 3.8 是否打破了最新版本google-api-core?以及是否有解决方案
Traceback (most recent call last):
File "/usr/local/lib/python3.8/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
worker.init_process()
File "/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 129, in init_process
self.load_wsgi()
File "/usr/local/lib/python3.8/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi
self.wsgi = self.app.wsgi()
File "/usr/local/lib/python3.8/site-packages/gunicorn/app/base.py", line 67, in wsgi
self.callable = self.load()
File "/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 52, in load
return self.load_wsgiapp()
File "/usr/local/lib/python3.8/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp
return util.import_app(self.app_uri)
File "/usr/local/lib/python3.8/site-packages/gunicorn/util.py", line 350, in import_app
__import__(module)
File "/prosebit/prosebit/app.py", line 10, in <module>
from prosebit.blueprints.page import page
File …Run Code Online (Sandbox Code Playgroud) 我正在使用 Flask-OIDC 库对外部服务执行用户身份验证。
当用户第一次登录时,ODIC 库运行良好。我可以看到用户信息和从外部身份验证生成的承载令牌。
当我刷新页面时出现问题。如果我检查用户登录状态,ODIC 库会告诉我用户已登录,但令牌是None。看这段代码:
@pdo_route.route('/edit_pdo', methods=['GET', 'POST'])
@oidc.require_login
def edit_pdo():
if oidc.oidc.user_loggedin:
oidc.get_access_token() # is None
Run Code Online (Sandbox Code Playgroud)
回报却是。oidc.oidc.user_loggedinTrueoidc.get_access_token()None
这是我的 OIDC 配置:
{
'SECRET_KEY': 'secret',
'TESTING': True,
'DEBUG': True,
'OIDC_ID_TOKEN_COOKIE_SECURE': False,
'OIDC_REQUIRE_VERIFIED_EMAIL': False,
'OIDC_USER_INFO_ENABLED': True,
'OIDC_OPENID_REALM': 'flask-demo',
'OIDC_SCOPES': ['openid', 'email', 'profile', 'name'],
'OIDC_INTROSPECTION_AUTH_METHOD': 'client_secret_post',
'OIDC_CLIENT_SECRETS': app.config.get("OIDC_CLIENT_SECRETS_PATH")
}
Run Code Online (Sandbox Code Playgroud) WTForms已更新为2.3.0具有重大更改。我尝试过调整其他要求,例如werkzeug.1.0.0但还没有成功。有人找到解决办法了吗?
这是堆栈跟踪:
Traceback (most recent call last):
File "/usr/local/bin/celery", line 8, in <module>
sys.exit(main())
File "/usr/local/lib/python3.8/site-packages/celery/__main__.py", line 16, in main
_main()
File "/usr/local/lib/python3.8/site-packages/celery/bin/celery.py", line 322, in main
cmd.execute_from_commandline(argv)
File "/usr/local/lib/python3.8/site-packages/celery/bin/celery.py", line 495, in execute_from_commandline
super(CeleryCommand, self).execute_from_commandline(argv)))
File "/usr/local/lib/python3.8/site-packages/celery/bin/base.py", line 289, in execute_from_commandline
argv = self.setup_app_from_commandline(argv)
File "/usr/local/lib/python3.8/site-packages/celery/bin/base.py", line 509, in setup_app_from_commandline
self.app = self.find_app(app)
File "/usr/local/lib/python3.8/site-packages/celery/bin/base.py", line 531, in find_app
return find_app(app, symbol_by_name=self.symbol_by_name)
File "/usr/local/lib/python3.8/site-packages/celery/app/utils.py", line 373, in find_app
sym = symbol_by_name(app, imp=imp)
File "/usr/local/lib/python3.8/site-packages/celery/bin/base.py", …Run Code Online (Sandbox Code Playgroud) 我正在通过编辑某些单词并在 pymupdf 中的编辑区域顶部添加不同的单词来编辑 pdf。
该代码运行成功,但它生成了一个非常大的单页 pdf (9MB)。我认为这是因为绘制了许多形状和修订,但我似乎无法重构。
我从这篇文章中知道,我不应该page.apply_redactions()多次应用,但如果我不这样做,文本就无法正确显示在经过编辑的正方形顶部,或者它会引发ValueError: fill rect must be finite and not empty.
任何重构较小输出 pdf 的帮助将不胜感激。
doc = fitz.open(self.path)
# get pdf background colour
col = fitz.utils.getColor("py_color")
# iterating through pages
for page in doc:
page.wrap_contents()
# geting the rect boxes which consists the matching regex
sensitive = self.get_sensitive_data(page.getText("text")
.split('\n'))
for data in sensitive:
areas = page.searchFor(data)
for area in areas:
text_page = page.get_textpage(clip=area)
text_page = text_page.extractDICT(area)
# text_page = area
max_length …Run Code Online (Sandbox Code Playgroud)