fix: resolve Hugging Face runtime error by adding missing dependencies and configuring port 7860
Browse files- Dockerfile +12 -4
- vite.config.ts +4 -0
Dockerfile
CHANGED
|
@@ -4,7 +4,7 @@ FROM node:22-slim
|
|
| 4 |
# 设置工作目录
|
| 5 |
WORKDIR /app
|
| 6 |
|
| 7 |
-
# 安装必要的依赖,用于 Electron
|
| 8 |
RUN apt-get update && apt-get install -y \
|
| 9 |
libnss3 \
|
| 10 |
libatk1.0-0 \
|
|
@@ -21,6 +21,12 @@ RUN apt-get update && apt-get install -y \
|
|
| 21 |
libasound2 \
|
| 22 |
libpango-1.0-0 \
|
| 23 |
libcairo2 \
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24 |
--no-install-recommends && \
|
| 25 |
rm -rf /var/lib/apt/lists/*
|
| 26 |
|
|
@@ -36,6 +42,8 @@ COPY . .
|
|
| 36 |
# 构建项目
|
| 37 |
RUN npm run build:web
|
| 38 |
|
| 39 |
-
#
|
| 40 |
-
|
| 41 |
-
|
|
|
|
|
|
|
|
|
| 4 |
# 设置工作目录
|
| 5 |
WORKDIR /app
|
| 6 |
|
| 7 |
+
# 安装必要的依赖,用于 Electron 和 Headless 运行
|
| 8 |
RUN apt-get update && apt-get install -y \
|
| 9 |
libnss3 \
|
| 10 |
libatk1.0-0 \
|
|
|
|
| 21 |
libasound2 \
|
| 22 |
libpango-1.0-0 \
|
| 23 |
libcairo2 \
|
| 24 |
+
libgtk-3-0 \
|
| 25 |
+
libx11-xcb1 \
|
| 26 |
+
libxcb-dri3-0 \
|
| 27 |
+
libxshmfence1 \
|
| 28 |
+
procps \
|
| 29 |
+
xvfb \
|
| 30 |
--no-install-recommends && \
|
| 31 |
rm -rf /var/lib/apt/lists/*
|
| 32 |
|
|
|
|
| 42 |
# 构建项目
|
| 43 |
RUN npm run build:web
|
| 44 |
|
| 45 |
+
# 暴露 Hugging Face Spaces 默认端口 7860
|
| 46 |
+
EXPOSE 7860
|
| 47 |
+
|
| 48 |
+
# 使用 xvfb-run 以支持 Electron 在无显示器环境下的启动,并设置 Vite 端口为 7860
|
| 49 |
+
CMD ["xvfb-run", "-a", "npm", "run", "dev", "--", "--host", "0.0.0.0", "--port", "7860"]
|
vite.config.ts
CHANGED
|
@@ -4,6 +4,10 @@ import electron from 'vite-plugin-electron/simple'
|
|
| 4 |
|
| 5 |
// https://vite.dev/config/
|
| 6 |
export default defineConfig({
|
|
|
|
|
|
|
|
|
|
|
|
|
| 7 |
plugins: [
|
| 8 |
vue(),
|
| 9 |
electron({
|
|
|
|
| 4 |
|
| 5 |
// https://vite.dev/config/
|
| 6 |
export default defineConfig({
|
| 7 |
+
server: {
|
| 8 |
+
port: 7860,
|
| 9 |
+
host: true,
|
| 10 |
+
},
|
| 11 |
plugins: [
|
| 12 |
vue(),
|
| 13 |
electron({
|