vipsphi commited on
Commit
caa9e56
·
verified ·
1 Parent(s): 3af4b7a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +12 -18
Dockerfile CHANGED
@@ -1,38 +1,32 @@
1
- FROM node:20-slim
2
 
3
- # 1. Cài đặt các thư viện cần thiết cho Electron chạy headless
4
- # Đã sửa tên gói libgobject thành libglib2.0-0
5
  RUN apt-get update && apt-get install -y \
 
 
 
6
  libatk1.0-0 \
7
  libatk-bridge2.0-0 \
8
  libcups2 \
9
  libdrm2 \
10
  libgtk-3-0 \
11
  libgbm1 \
12
- libnss3 \
13
- libxcomposite1 \
14
- libxdamage1 \
15
- libxrandr2 \
16
  libasound2 \
17
- libxshmfence1 \
18
- libglib2.0-0 \
19
- xvfb \
20
  && rm -rf /var/lib/apt/lists/*
21
 
22
  WORKDIR /app
23
 
24
- # 2. Copy mã nguồn Captcha Service của bạn
25
  COPY . .
26
 
27
- # 3. Cài đặt dependencies (Tương đương Admin privileges)
28
  RUN npm install --unsafe-perm
29
 
30
- # Hugging Face cần cổng 7860
31
  EXPOSE 7860
32
 
33
- # 4. Chạy ứng dụng qua màn hình ảo Xvfb
34
- # Thêm cờ --no-sandbox để Electron chạy được trong Docker
35
- ENV ELECTRON_ENABLE_STACK_DUMP=1
36
- ENV ELECTRON_DISABLE_GPU=1
37
 
38
- CMD ["xvfb-run", "--server-args=-screen 0 1024x768x24", "npm", "start", "--", "--no-sandbox"]
 
 
1
+ FROM node:20-bullseye-slim
2
 
3
+ # Cài đặt các thư viện hệ thống cần thiết cho Electron
 
4
  RUN apt-get update && apt-get install -y \
5
+ git \
6
+ xvfb \
7
+ libnss3 \
8
  libatk1.0-0 \
9
  libatk-bridge2.0-0 \
10
  libcups2 \
11
  libdrm2 \
12
  libgtk-3-0 \
13
  libgbm1 \
 
 
 
 
14
  libasound2 \
 
 
 
15
  && rm -rf /var/lib/apt/lists/*
16
 
17
  WORKDIR /app
18
 
19
+ # Copy mã nguồn captcha của bạn
20
  COPY . .
21
 
22
+ # Cài đặt với quyền root an toàn
23
  RUN npm install --unsafe-perm
24
 
25
+ # Hugging Face Spaces mặc định dùng cổng 7860
26
  EXPOSE 7860
27
 
28
+ # Biến môi trường để chạy Electron mà không có màn hình vật
29
+ ENV DISPLAY=:99
 
 
30
 
31
+ # Lệnh khởi chạy: Tạo màn hình ảo trước khi chạy npm start
32
+ CMD Xvfb :99 -screen 0 1024x768x16 & npm start -- --no-sandbox