vipsphi commited on
Commit
be48245
·
verified ·
1 Parent(s): bb1d66a

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +18 -7
Dockerfile CHANGED
@@ -1,6 +1,6 @@
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 \
@@ -12,21 +12,32 @@ RUN apt-get update && apt-get install -y \
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 lý
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
 
 
 
 
1
  FROM node:20-bullseye-slim
2
 
3
+ # 1. Cài đặt đầy đủ các thư viện cần thiết cho Chromium/Electron
4
  RUN apt-get update && apt-get install -y \
5
  git \
6
  xvfb \
 
12
  libgtk-3-0 \
13
  libgbm1 \
14
  libasound2 \
15
+ libxshmfence1 \
16
+ libx11-xcb1 \
17
+ dbus-x11 \
18
  && rm -rf /var/lib/apt/lists/*
19
 
20
  WORKDIR /app
21
 
 
22
  COPY . .
23
 
24
+ # Cài đặt dependencies
25
  RUN npm install --unsafe-perm
26
 
27
+ # 2. Tạo thư mục cho DBUS để tránh lỗi "Failed to connect to socket"
28
+ RUN mkdir -p /var/run/dbus
29
+
30
+ # Hugging Face Spaces dùng cổng 7860
31
  EXPOSE 7860
32
 
 
33
  ENV DISPLAY=:99
34
+ # 3. Các biến môi trường để tắt các tính năng gây lỗi
35
+ ENV NODE_ENV=production
36
+ ENV ELECTRON_DISABLE_GPU=1
37
+ ENV ELECTRON_ENABLE_STACK_DUMPING=true
38
 
39
+ # 4. Sử dụng một script khởi động hoặc chuỗi lệnh sạch hơn
40
+ # Thêm --disable-dev-shm-usage cực kỳ quan trọng trong Docker
41
+ CMD Xvfb :99 -screen 0 1024x768x16 & \
42
+ dbus-daemon --system --fork && \
43
+ npm start -- --no-sandbox --disable-dev-shm-usage --disable-gpu --disable-software-rasterizer