Реализован production-hardening по fix1: env/reconfigure, IPv4-only, TLS, secrets, firewall, docs

This commit is contained in:
2026-04-26 07:27:06 +05:00
parent 2b4a45ad23
commit 3fccd5c442
109 changed files with 1773 additions and 569 deletions
-1
View File
@@ -73,4 +73,3 @@ func replaceRelativePaths(htmlContent string, basePath string) string {
</script>`, basePath)
return strings.Replace(htmlContent, "</head>", injection+"</head>", 1)
}
-3
View File
@@ -16,13 +16,10 @@
"@vueuse/core": "^9.1.1",
"axios": "^1.3.4",
"copy-to-clipboard": "^3.3.3",
"echarts": "^5.2.2",
"element-plus": "^2.3.1",
"nprogress": "^0.2.0",
"path-browserify": "^1.0.1",
"path-to-regexp": "^6.2.0",
"pinia": "^2.0.33",
"screenfull": "^6.0.0",
"vue": "^3.2.45",
"vue-i18n": "9",
"vue-router": "^4.1.6",
+2 -58
View File
@@ -20,9 +20,6 @@ importers:
copy-to-clipboard:
specifier: ^3.3.3
version: 3.3.3
echarts:
specifier: ^5.2.2
version: 5.2.2
element-plus:
specifier: ^2.3.1
version: 2.3.1(vue@3.2.45)
@@ -32,15 +29,9 @@ importers:
path-browserify:
specifier: ^1.0.1
version: 1.0.1
path-to-regexp:
specifier: ^6.2.0
version: 6.2.0
pinia:
specifier: ^2.0.33
version: 2.0.33(typescript@4.9.3)(vue@3.2.45)
screenfull:
specifier: ^6.0.0
version: 6.0.0
vue:
specifier: ^3.2.45
version: 3.2.45
@@ -89,7 +80,7 @@ importers:
version: 9.9.0(eslint@8.34.0)
fast-glob:
specifier: ^3.2.11
version: 3.2.11
version: 3.3.1
postcss:
specifier: ^8.4.21
version: 8.4.21
@@ -559,28 +550,24 @@ packages:
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
libc: [glibc]
'@swc/core-linux-arm64-musl@1.11.24':
resolution: {integrity: sha512-ypXLIdszRo0re7PNNaXN0+2lD454G8l9LPK/rbfRXnhLWDBPURxzKlLlU/YGd2zP98wPcVooMmegRSNOKfvErw==}
engines: {node: '>=10'}
cpu: [arm64]
os: [linux]
libc: [musl]
'@swc/core-linux-x64-gnu@1.11.24':
resolution: {integrity: sha512-IM7d+STVZD48zxcgo69L0yYptfhaaE9cMZ+9OoMxirNafhKKXwoZuufol1+alEFKc+Wbwp+aUPe/DeWC/Lh3dg==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
libc: [glibc]
'@swc/core-linux-x64-musl@1.11.24':
resolution: {integrity: sha512-DZByJaMVzSfjQKKQn3cqSeqwy6lpMaQDQQ4HPlch9FWtDx/dLcpdIhxssqZXcR2rhaQVIaRQsCqwV6orSDGAGw==}
engines: {node: '>=10'}
cpu: [x64]
os: [linux]
libc: [musl]
'@swc/core-win32-arm64-msvc@1.11.24':
resolution: {integrity: sha512-Q64Ytn23y9aVDKN5iryFi8mRgyHw3/kyjTjT4qFCa8AEb5sGUuSj//AUZ6c0J7hQKMHlg9do5Etvoe61V98/JQ==}
@@ -1273,9 +1260,6 @@ packages:
duplexer@0.1.2:
resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
echarts@5.2.2:
resolution: {integrity: sha512-yxuBfeIH5c+0FsoRP60w4De6omXhA06c7eUYBsC1ykB6Ys2yK5fSteIYWvkJ4xJVLQgCvAdO8C4mN6MLeJpBaw==}
electron-to-chromium@1.4.529:
resolution: {integrity: sha512-6uyPyXTo8lkv8SWAmjKFbG42U073TXlzD4R8rW3EzuznhFS2olCIAfjjQtV2dV2ar/vRF55KUd3zQYnCB0dd3A==}
@@ -1446,10 +1430,6 @@ packages:
fast-diff@1.3.0:
resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==}
fast-glob@3.2.11:
resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==}
engines: {node: '>=8.6.0'}
fast-glob@3.3.1:
resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
engines: {node: '>=8.6.0'}
@@ -2221,9 +2201,6 @@ packages:
path-parse@1.0.7:
resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
path-to-regexp@6.2.0:
resolution: {integrity: sha512-f66KywYG6+43afgE/8j/GoiNyygk/bnoCbps++3ErRKsIYkGGupyv07R2Ok5m9i67Iqc+T2g1eAUGUPzWhYTyg==}
path-type@4.0.0:
resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
engines: {node: '>=8'}
@@ -2466,10 +2443,6 @@ packages:
engines: {node: '>=12.0.0'}
hasBin: true
screenfull@6.0.0:
resolution: {integrity: sha512-LGY0nhNQkC4FX4DT4pZdJ5cZH5EOz9Gfh9KcVMl779pS677k4IV1Wv7sY/CwC9VKFT21fYgCh7zkTVVefi5XKA==}
engines: {node: ^14.13.1 || >=16.0.0}
scule@1.0.0:
resolution: {integrity: sha512-4AsO/FrViE/iDNEPaAQlb77tf0csuq27EsVpy6ett584EcRTp6pTDLoGWVxCD77y5iU5FauOvhsI4o1APwPoSQ==}
@@ -2796,9 +2769,6 @@ packages:
tslib@1.14.1:
resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
tslib@2.3.0:
resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==}
tsutils@3.21.0:
resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
engines: {node: '>= 6'}
@@ -3055,9 +3025,6 @@ packages:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
zrender@5.2.1:
resolution: {integrity: sha512-M3bPGZuyLTNBC6LiNKXJwSCtglMp8XUEqEBG+2MdICDI3d1s500Y4P0CzldQGsqpRVB7fkvf3BKQQRxsEaTlsw==}
snapshots:
'@aashutoshrathi/word-wrap@1.2.6': {}
@@ -4313,11 +4280,6 @@ snapshots:
duplexer@0.1.2: {}
echarts@5.2.2:
dependencies:
tslib: 2.3.0
zrender: 5.2.1
electron-to-chromium@1.4.529: {}
element-plus@2.3.1(vue@3.2.45):
@@ -4566,14 +4528,6 @@ snapshots:
fast-diff@1.3.0: {}
fast-glob@3.2.11:
dependencies:
'@nodelib/fs.stat': 2.0.5
'@nodelib/fs.walk': 1.2.8
glob-parent: 5.1.2
merge2: 1.4.1
micromatch: 4.0.5
fast-glob@3.3.1:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -4715,7 +4669,7 @@ snapshots:
dependencies:
array-union: 2.1.0
dir-glob: 3.0.1
fast-glob: 3.2.11
fast-glob: 3.3.1
ignore: 5.2.4
merge2: 1.4.1
slash: 3.0.0
@@ -5312,8 +5266,6 @@ snapshots:
path-parse@1.0.7: {}
path-to-regexp@6.2.0: {}
path-type@4.0.0: {}
pathe@0.2.0: {}
@@ -5542,8 +5494,6 @@ snapshots:
immutable: 4.3.4
source-map-js: 1.0.2
screenfull@6.0.0: {}
scule@1.0.0: {}
semver@5.7.2: {}
@@ -5922,8 +5872,6 @@ snapshots:
tslib@1.14.1: {}
tslib@2.3.0: {}
tsutils@3.21.0(typescript@4.9.3):
dependencies:
tslib: 1.14.1
@@ -6226,7 +6174,3 @@ snapshots:
yargs-parser@20.2.9: {}
yocto-queue@0.1.0: {}
zrender@5.2.1:
dependencies:
tslib: 2.3.0