From 3c89e993d23c6e7054987830ab3cbb8637190000 Mon Sep 17 00:00:00 2001 From: lan Date: Tue, 13 Dec 2022 21:16:41 +0800 Subject: [PATCH 1/5] fix:upload failure --- storage.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/storage.py b/storage.py index 0059aed..8caf08d 100644 --- a/storage.py +++ b/storage.py @@ -23,7 +23,7 @@ class FileSystemStorage: path = self.DATA_ROOT / f"upload/{now.year}/{now.month}/{now.day}/" if not path.exists(): path.mkdir(parents=True) - text = f"{self.STATIC_URL}/{(path / f'{key}.{ext}').relative_to(self.DATA_ROOT).relative_to(self.DATA_ROOT)}" + text = f"{self.STATIC_URL}/{(path / f'{key}.{ext}').relative_to(self.DATA_ROOT)}" return text @staticmethod From 85ac39e3230af04ee85082f5f01c027a0d4bcd35 Mon Sep 17 00:00:00 2001 From: lan Date: Tue, 13 Dec 2022 21:20:09 +0800 Subject: [PATCH 2/5] update:docker script --- readme.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/readme.md b/readme.md index 40c0229..1cae780 100644 --- a/readme.md +++ b/readme.md @@ -119,8 +119,7 @@ KEYWORDS=FileCodeBox,文件快递柜,口令传送箱,匿名口令分享文 ### Docker部署 ```bash -docker run -d --restart=always -v /opt/FileCodeBox/:/app -p 12345:12345 --name="filecodebox" lanol/filecodebox:V1.5.1 -``` +docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/.env:/app/.env -v /opt/FileCodeBox/static/upload:/app/static/upload -v /opt/FileCodeBox/database.db:/app/database.db lanol/filecodebox:latest``` ### Docker自己构建部署 ```bash From a5ddb6fc74d8b5df85b0fdcf9766062d53e2ea31 Mon Sep 17 00:00:00 2001 From: lan Date: Tue, 13 Dec 2022 21:37:09 +0800 Subject: [PATCH 3/5] update:docker script --- readme.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 1cae780..4fec7ce 100644 --- a/readme.md +++ b/readme.md @@ -119,7 +119,8 @@ KEYWORDS=FileCodeBox,文件快递柜,口令传送箱,匿名口令分享文 ### Docker部署 ```bash -docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/.env:/app/.env -v /opt/FileCodeBox/static/upload:/app/static/upload -v /opt/FileCodeBox/database.db:/app/database.db lanol/filecodebox:latest``` +docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/.env:/app/.env -v /opt/FileCodeBox/static/upload:/app/static/upload --name filecodebox lanol/filecodebox:latest +``` ### Docker自己构建部署 ```bash From 44dd41573c6a24e863e2f9b1fa89b1ab5fe47921 Mon Sep 17 00:00:00 2001 From: lan Date: Tue, 13 Dec 2022 22:06:29 +0800 Subject: [PATCH 4/5] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=BB=93=E6=9E=84=EF=BC=8C=E5=AD=98=E5=82=A8=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=B8=8D=E5=86=8D=E6=9A=B4=E9=9C=B2=EF=BC=8C=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=95=B0=E6=8D=AE=E9=83=BD=E6=94=BE=E5=9C=A8/data?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=B9=EF=BC=8C=E6=96=B9=E4=BE=BFdocker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 6 +++--- database.py | 5 ++--- main.py | 5 +++-- settings.py | 9 +++++---- templates/index.html | 3 ++- 5 files changed, 15 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index e7e483a..d015956 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ media/ logs/ .idea -/static/upload +/data __pycache__/ *.py[cod] *$py.class @@ -111,7 +111,7 @@ celerybeat.pid *.sage.py # Environments -.env +data/.env .venv env/ venv/ @@ -150,6 +150,6 @@ for_test.py .html /evaluate/temp.py /evaluation/back.json -.env* +data/.env .backup/ /cloc-1.64.exe diff --git a/database.py b/database.py index fb06c42..c12f489 100644 --- a/database.py +++ b/database.py @@ -1,11 +1,10 @@ import datetime - from sqlalchemy import Boolean, Column, Integer, String, DateTime from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.ext.asyncio import create_async_engine from sqlalchemy.ext.asyncio.session import AsyncSession - -engine = create_async_engine("sqlite+aiosqlite:///database.db") +import settings +engine = create_async_engine(settings.DATABASE_URL) Base = declarative_base() diff --git a/main.py b/main.py index 32effe6..d1c2320 100644 --- a/main.py +++ b/main.py @@ -22,8 +22,9 @@ app = FastAPI(debug=settings.DEBUG) DATA_ROOT = Path(settings.DATA_ROOT) if not DATA_ROOT.exists(): DATA_ROOT.mkdir(parents=True) -# 静态文件夹 -app.mount(settings.STATIC_URL, StaticFiles(directory=DATA_ROOT), name="static") + +# 静态文件夹,这个固定就行了,静态资源都放在这里 +app.mount(settings.STATIC_URL, StaticFiles(directory='./static'), name="static") @app.on_event('startup') diff --git a/settings.py b/settings.py index e7b7a0a..9e4cd6a 100644 --- a/settings.py +++ b/settings.py @@ -1,15 +1,16 @@ from starlette.config import Config # 配置文件.env -config = Config(".env") +# 请将.env移动至data目录,方便docker部署 +config = Config("data/.env") # 是否开启DEBUG模式 DEBUG = config('DEBUG', cast=bool, default=False) # 端口 PORT = config('PORT', cast=int, default=12345) # Sqlite数据库文件 -DATABASE_URL = config('DATABASE_URL', cast=str, default="sqlite+aiosqlite:///database.db") -# 静态文件夹 -DATA_ROOT = config('DATA_ROOT', cast=str, default="./static") +DATABASE_URL = config('DATABASE_URL', cast=str, default="sqlite+aiosqlite:///data/database.db") +# 数据存储文件夹,文件就不暴露在静态资源里面了 +DATA_ROOT = './data/' + config('DATA_ROOT', cast=str, default=f"static") # 静态文件夹URL STATIC_URL = config('STATIC_URL', cast=str, default="/static") # 错误次数 diff --git a/templates/index.html b/templates/index.html index 7748803..28d10c1 100644 --- a/templates/index.html +++ b/templates/index.html @@ -306,8 +306,9 @@ } }, successUpload(response, file, fileList) { + console.log(response) this.$message({ - message: response.msg, + message: response.detail, type: 'success' }); this.files.unshift(response.data); From 17a06a07ce02a0a979297ae8a57087793fee5469 Mon Sep 17 00:00:00 2001 From: lan Date: Tue, 13 Dec 2022 22:07:14 +0800 Subject: [PATCH 5/5] =?UTF-8?q?update:=E4=BF=AE=E6=94=B9=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=BB=93=E6=9E=84=EF=BC=8C=E5=AD=98=E5=82=A8=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=B8=8D=E5=86=8D=E6=9A=B4=E9=9C=B2=EF=BC=8C=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89=E6=95=B0=E6=8D=AE=E9=83=BD=E6=94=BE=E5=9C=A8/data?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E5=A4=B9=EF=BC=8C=E6=96=B9=E4=BE=BFdocker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/readme.md b/readme.md index 4fec7ce..d34af3c 100644 --- a/readme.md +++ b/readme.md @@ -119,7 +119,7 @@ KEYWORDS=FileCodeBox,文件快递柜,口令传送箱,匿名口令分享文 ### Docker部署 ```bash -docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/.env:/app/.env -v /opt/FileCodeBox/static/upload:/app/static/upload --name filecodebox lanol/filecodebox:latest +docker run -d --restart=always -p 12345:12345 -v /opt/FileCodeBox/.env:/app/data --name filecodebox lanol/filecodebox:latest ``` ### Docker自己构建部署