update
This commit is contained in:
@@ -9,6 +9,9 @@ COPY server/package.json ./
|
|||||||
# 复制源码
|
# 复制源码
|
||||||
COPY ./server ./
|
COPY ./server ./
|
||||||
|
|
||||||
|
COPY ./server/code ./code-backup
|
||||||
|
|
||||||
|
COPY ./web/dist ./demo/root/light-code-center
|
||||||
RUN bun install
|
RUN bun install
|
||||||
|
|
||||||
# 构建(可选)
|
# 构建(可选)
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
services:
|
services:
|
||||||
light-code:
|
light-code:
|
||||||
image: 'kevisual/light-code:latest'
|
# image: 'kevisual/light-code:latest'
|
||||||
|
image: 'crpi-92z54xpbq1hzmdcz.cn-hangzhou.personal.cr.aliyuncs.com/kevisual/light-code:latest'
|
||||||
user: root
|
user: root
|
||||||
volumes:
|
volumes:
|
||||||
- ./data/code:/app/code
|
- ./data/code:/app/code
|
||||||
ports:
|
ports:
|
||||||
- '3005:4005'
|
- '6005:4005'
|
||||||
restart: always
|
restart: always
|
||||||
|
|
||||||
filebrowser:
|
filebrowser:
|
||||||
@@ -17,7 +18,7 @@ services:
|
|||||||
- ./data/config:/config
|
- ./data/config:/config
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
ports:
|
ports:
|
||||||
- '8080:80'
|
- '6006:80'
|
||||||
environment:
|
environment:
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
- PGID=1000
|
- PGID=1000
|
||||||
@@ -7,7 +7,9 @@
|
|||||||
"dev": "pnpm run dev:server & pnpm run dev:web",
|
"dev": "pnpm run dev:server & pnpm run dev:web",
|
||||||
"dev:server": "cd server && pnpm dev",
|
"dev:server": "cd server && pnpm dev",
|
||||||
"dev:web": "cd web && pnpm dev",
|
"dev:web": "cd web && pnpm dev",
|
||||||
"docker:build": "docker build -t kevisual/light-code .",
|
"docker:build": "docker build -t kevisual/light-code:latest .",
|
||||||
|
"docker:aliyun": "docker build -t crpi-92z54xpbq1hzmdcz.cn-hangzhou.personal.cr.aliyuncs.com/kevisual/light-code .",
|
||||||
|
"docker:dev": "docker compose up",
|
||||||
"build": "turbo build"
|
"build": "turbo build"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
|
|||||||
@@ -6,6 +6,7 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "bun run --watch --hot src/index.ts",
|
"dev": "bun run --watch --hot src/index.ts",
|
||||||
"start": "bun run src/index.ts",
|
"start": "bun run src/index.ts",
|
||||||
|
"prestart": "bun src/test/check-code.ts",
|
||||||
"build": "NODE_ENV=production bun bun.config.ts"
|
"build": "NODE_ENV=production bun bun.config.ts"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import { proxyRoute, initProxy } from '@kevisual/local-proxy/proxy.ts';
|
|||||||
initProxy({
|
initProxy({
|
||||||
pagesDir: './demo',
|
pagesDir: './demo',
|
||||||
watch: true,
|
watch: true,
|
||||||
|
home: '/root/light-code-center',
|
||||||
});
|
});
|
||||||
|
|
||||||
import { app } from './app.ts'
|
import { app } from './app.ts'
|
||||||
|
|||||||
37
server/src/test/check-code.ts
Normal file
37
server/src/test/check-code.ts
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
import path from 'node:path'
|
||||||
|
import fs from 'node:fs'
|
||||||
|
const main = async () => {
|
||||||
|
const root = path.join(process.cwd(), 'code');
|
||||||
|
const buckupRoot = path.join(process.cwd(), 'code-backup');
|
||||||
|
|
||||||
|
// 如果 code 文件夹不存在或文件夹列表长度等于0,则从 code-backup 复制
|
||||||
|
let shouldCopy = false;
|
||||||
|
|
||||||
|
if (!fs.existsSync(root)) {
|
||||||
|
console.log('code 文件夹不存在');
|
||||||
|
shouldCopy = true;
|
||||||
|
} else {
|
||||||
|
// 检查 code 文件夹下的文件夹列表
|
||||||
|
const items = await fs.promises.readdir(root, { withFileTypes: true });
|
||||||
|
const folders = items.filter(item => item.isDirectory());
|
||||||
|
|
||||||
|
if (folders.length === 0) {
|
||||||
|
console.log('code 文件夹存在但为空(无子文件夹)');
|
||||||
|
shouldCopy = true;
|
||||||
|
} else {
|
||||||
|
console.log(`code 文件夹已存在且包含 ${folders.length} 个子文件夹`);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (shouldCopy) {
|
||||||
|
if (fs.existsSync(buckupRoot)) {
|
||||||
|
console.log('正在从 code-backup 复制...');
|
||||||
|
await fs.promises.cp(buckupRoot, root, { recursive: true });
|
||||||
|
console.log('复制完成!');
|
||||||
|
} else {
|
||||||
|
console.log('code-backup 文件夹不存在,无法复制');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
main().catch(console.error)
|
||||||
Reference in New Issue
Block a user