Twan07 commited on
Commit
8bbe0fe
·
verified ·
1 Parent(s): d58bf87

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +11 -6
Dockerfile CHANGED
@@ -1,22 +1,23 @@
1
- # Sử dụng image Go chính thức để lấy file thực thi
2
  FROM golang:1.23-bookworm AS golang-build
3
 
4
  FROM node:22-bookworm
5
 
6
  # 1. Copy Go từ image golang sang image node
7
  COPY --from=golang-build /usr/local/go/ /usr/local/go/
8
-
9
- # 2. Thiết lập biến môi trường PATH để dùng được lệnh 'go'
10
  ENV PATH="/usr/local/go/bin:${PATH}"
11
 
12
  USER root
13
 
14
- # 3. Cài đặt các thư viện cần thiết (Bỏ software-properties-common vì không cần PPA nữa)
15
  RUN apt-get update && apt-get install -y \
16
  git \
17
  sudo \
18
  build-essential \
19
  python3 \
 
 
 
20
  pkg-config \
21
  libssl-dev \
22
  libcairo2-dev \
@@ -27,6 +28,10 @@ RUN apt-get update && apt-get install -y \
27
  libsqlite3-dev \
28
  && rm -rf /var/lib/apt/lists/*
29
 
 
 
 
 
30
  # Cho phép user node dùng sudo không password
31
  RUN echo "node ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
32
 
@@ -38,8 +43,8 @@ RUN chown node:node /start.sh /home/node/app
38
 
39
  USER node
40
 
41
- # Kiểm tra thử xem go đã nhận chưa
42
- RUN go version
43
 
44
  EXPOSE 3030
45
  CMD ["/start.sh"]
 
1
+ # Sử dụng image Go chính thức để lấy file thực thi (Tránh lỗi PPA trên Debian)
2
  FROM golang:1.23-bookworm AS golang-build
3
 
4
  FROM node:22-bookworm
5
 
6
  # 1. Copy Go từ image golang sang image node
7
  COPY --from=golang-build /usr/local/go/ /usr/local/go/
 
 
8
  ENV PATH="/usr/local/go/bin:${PATH}"
9
 
10
  USER root
11
 
12
+ # 2. Cài đặt các thư viện hệ thống python3
13
  RUN apt-get update && apt-get install -y \
14
  git \
15
  sudo \
16
  build-essential \
17
  python3 \
18
+ python3-pip \
19
+ curl \
20
+ ffmpeg \
21
  pkg-config \
22
  libssl-dev \
23
  libcairo2-dev \
 
28
  libsqlite3-dev \
29
  && rm -rf /var/lib/apt/lists/*
30
 
31
+ # 3. Cài đặt yt-dlp bản mới nhất từ GitHub
32
+ RUN curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp -o /usr/local/bin/yt-dlp \
33
+ && chmod a+rx /usr/local/bin/yt-dlp
34
+
35
  # Cho phép user node dùng sudo không password
36
  RUN echo "node ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
37
 
 
43
 
44
  USER node
45
 
46
+ # Kiểm tra các thành phần đã cài đặt
47
+ RUN go version && yt-dlp --version
48
 
49
  EXPOSE 3030
50
  CMD ["/start.sh"]