File size: 939 Bytes
6f0e1a4
a0bb601
 
6f0e1a4
a0bb601
6f0e1a4
 
 
 
 
 
 
 
a0bb601
6f0e1a4
a0bb601
6f0e1a4
a0bb601
 
6f0e1a4
 
a0bb601
6f0e1a4
 
 
 
a0bb601
6f0e1a4
 
a0bb601
6f0e1a4
a0bb601
 
6f0e1a4
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Menggunakan image Node.js terbaru sebagai base image
FROM node:latest

# Memperbarui paket dan menginstal dependensi tambahan
RUN apt-get update && apt-get install -y \
    chromium \
    ffmpeg \
    imagemagick \
    libnss3-dev \
    webp && \
    apt-get clean

# Menetapkan variabel lingkungan
ENV CHROME_BIN=/usr/bin/chromium \
    TZ=Asia/Jakarta

# Menentukan direktori kerja di dalam container
WORKDIR /app

# Menyalin file package.json dan package-lock.json ke dalam container
COPY package*.json ./

# Menginstal dependensi yang diperlukan, termasuk PM2
RUN npm install && npm install pm2 -g
ENV PM2_PUBLIC_KEY pheqiah2qgpu45w
ENV PM2_SECRET_KEY xk8zhybf7ns8ybz

# Menyalin semua file dari direktori lokal ke dalam direktori kerja di container
COPY . .

# Mengekspos port yang akan digunakan oleh aplikasi
EXPOSE 7860

# Menjalankan aplikasi menggunakan pm2-runtime
CMD ["pm2-runtime", "start", "index.js", "--name", "HELPER"]