reikernx commited on
Commit
9dbe4e7
·
verified ·
1 Parent(s): c6c361a

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +90 -0
Dockerfile ADDED
@@ -0,0 +1,90 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #######################################################################################################################################################################
2
+ #######################################################################################################################################################################
3
+ # ## ###### ###### BASE IMAGE #
4
+ #######################################################################################################################################################################
5
+ #######################################################################################################################################################################
6
+ FROM node:20
7
+
8
+ #######################################################################################################################################################################
9
+ #######################################################################################################################################################################
10
+ # ####### SET WORKING DIRECTORY #
11
+ #######################################################################################################################################################################
12
+ #######################################################################################################################################################################
13
+ WORKDIR /app
14
+
15
+ #######################################################################################################################################################################
16
+ #######################################################################################################################################################################
17
+ # INSTALL SYSTEM DEPENDENCIES #
18
+ #######################################################################################################################################################################
19
+ #######################################################################################################################################################################
20
+ RUN apt-get update && apt-get install -y \
21
+ wget \
22
+ curl \
23
+ unzip \
24
+ fonts-liberation \
25
+ libasound2 \
26
+ libatk-bridge2.0-0 \
27
+ libatk1.0-0 \
28
+ libcups2 \
29
+ libdbus-1-3 \
30
+ libgbm-dev \
31
+ libnspr4 \
32
+ libnss3 \
33
+ libxcomposite1 \
34
+ libxdamage1 \
35
+ libxfixes3 \
36
+ libxrandr2 \
37
+ xdg-utils \
38
+ libu2f-udev \
39
+ libvulkan1 \
40
+ xvfb \
41
+ ca-certificates \
42
+ git \
43
+ --no-install-recommends && \
44
+ rm -rf /var/lib/apt/lists/*
45
+ #######################################################################################################################################################################
46
+ #######################################################################################################################################################################
47
+ # INSTALL GOOGLE CHROME (FOR PUPPETEER) #
48
+ #######################################################################################################################################################################
49
+ #######################################################################################################################################################################
50
+ RUN wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | gpg --dearmor > /usr/share/keyrings/google-chrome-keyring.gpg \
51
+ && echo 'deb [signed-by=/usr/share/keyrings/google-chrome-keyring.gpg] http://dl.google.com/linux/chrome/deb/ stable main' \
52
+ | tee /etc/apt/sources.list.d/google-chrome.list \
53
+ && apt-get update \
54
+ && apt-get install -y google-chrome-stable
55
+ #######################################################################################################################################################################
56
+ #######################################################################################################################################################################
57
+ # ############## ENVIRONMENT VARIABLES #
58
+ #######################################################################################################################################################################
59
+ #######################################################################################################################################################################
60
+ ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/google-chrome \
61
+ PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true \
62
+ PUPPETEER_CACHE_DIR=/tmp/puppeteer_cache \
63
+ NODE_ENV=production
64
+ #######################################################################################################################################################################
65
+ #######################################################################################################################################################################
66
+ # COPY START SCRIPT INTO CONTAINER #
67
+ #######################################################################################################################################################################
68
+ #######################################################################################################################################################################
69
+ COPY start.sh /app/start.sh
70
+ RUN chmod +x /app/start.sh
71
+ RUN chmod -R 777 /app
72
+ #######################################################################################################################################################################
73
+ ############################################################################################################################################################################
74
+ # ####### ###### INSTALL GLOBAL NODE DEPENDENCIES #
75
+ ############################################################################################################################################################################
76
+ #######################################################################################################################################################################
77
+ RUN npm install cheerio puppeteer puppeteer-extra puppeteer-extra-plugin-stealth express axios qs cors string-similarity express axios form-data
78
+ RUN npx puppeteer install
79
+ #######################################################################################################################################################################
80
+ #######################################################################################################################################################################
81
+ # EXPOSE PORT #
82
+ #######################################################################################################################################################################
83
+ #######################################################################################################################################################################
84
+ EXPOSE 7860
85
+ #######################################################################################################################################################################
86
+ #######################################################################################################################################################################
87
+ # DEFAULT COMMAND #
88
+ #######################################################################################################################################################################
89
+ #######################################################################################################################################################################
90
+ CMD ["/app/start.sh"]