akra35567 commited on
Commit
5ddda4c
Β·
verified Β·
1 Parent(s): c9153f4

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +85 -10
Dockerfile CHANGED
@@ -80,11 +80,74 @@ RUN chmod +x /tmp/install-tools.sh /tmp/verify-tools.sh && \
80
  # Define o diretΓ³rio de trabalho
81
  WORKDIR /app
82
 
83
- # Copia cΓ³digo da aplicaΓ§Γ£o
84
- COPY . ./
85
-
86
- # Instala dependΓͺncias do Node.js
87
- RUN npm install --production
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
88
 
89
  # ═══════════════════════════════════════════════════════════════════
90
  # ESTRUTURA MODULAR: Renomear 'classes' para 'modules' (HF Compatibility)
@@ -92,6 +155,12 @@ RUN npm install --production
92
 
93
  RUN if [ -d ./classes ]; then mv ./classes ./modules; echo "βœ… MΓ³dulos configurados (classes β†’ modules)"; fi
94
 
 
 
 
 
 
 
95
  # ═══════════════════════════════════════════════════════════════════
96
  # CRIAR USUÁRIO NΓƒO-ROOT
97
  # ═══════════════════════════════════════════════════════════════════
@@ -101,8 +170,7 @@ RUN addgroup -g 1001 -S app && \
101
 
102
  # Ajusta permissΓ΅es
103
  RUN chown -R app:app /app && \
104
- mkdir -p /app/auth_info_baileys /app/temp /app/database/data /app/database/datauser /app/database/subscriptions && \
105
- chown -R app:app /app/auth_info_baileys /app/temp /app/database && \
106
  chmod 777 /tmp/pentest_results
107
 
108
  # ═══════════════════════════════════════════════════════════════════
@@ -110,6 +178,8 @@ RUN chown -R app:app /app && \
110
  # ═══════════════════════════════════════════════════════════════════
111
 
112
  RUN echo "πŸ” Verificando ferramentas de pentesting..." && \
 
 
113
  yt-dlp --version 2>&1 || echo "⚠️ yt-dlp" && \
114
  nmap --version 2>&1 | head -1 || echo "⚠️ nmap" && \
115
  python3 /opt/sqlmap/sqlmap.py --version 2>&1 | head -1 || echo "⚠️ sqlmap" && \
@@ -119,6 +189,13 @@ RUN echo "πŸ” Verificando ferramentas de pentesting..." && \
119
  command -v masscan 2>&1 || echo "⚠️ masscan" && \
120
  echo "βœ… VerificaΓ§Γ£o de ferramentas concluΓ­da"
121
 
 
 
 
 
 
 
 
122
  # ═══════════════════════════════════════════════════════════════════
123
  # USUÁRIO NΓƒO-ROOT E EXPΓ•E PORTA
124
  # ═══════════════════════════════════════════════════════════════════
@@ -134,6 +211,4 @@ HEALTHCHECK --interval=30s --timeout=10s --start-period=40s --retries=3 \
134
  CMD node -e "const p=process.env.PORT||7860; require('http').get(\`http://localhost:\${p}/health\`, (r) => process.exit(r.statusCode===200?0:1))"
135
 
136
  # Comando de inicializaΓ§Γ£o
137
- CMD ["node", "index.js"]
138
-
139
-
 
80
  # Define o diretΓ³rio de trabalho
81
  WORKDIR /app
82
 
83
+ # ═══════════════════════════════════════════════════════════════════
84
+ # COPIAR ARQUIVOS DE DEPENDÊNCIA PRIMEIRO (OTIMIZA CACHE)
85
+ # ═══════════════════════════════════════════════════════════════════
86
+
87
+ COPY package*.json ./
88
+
89
+ # ═══════════════════════════════════════════════════════════════════
90
+ # INSTALAR DEPENDÊNCIAS DO NODE.JS COM VERSΓ•ES CORRIGIDAS
91
+ # ═══════════════════════════════════════════════════════════════════
92
+
93
+ # Primeiro, instalar dependΓͺncias bΓ‘sicas
94
+ RUN npm install --no-audit --progress=false \
95
+ @whiskeysockets/baileys@^6.7.8 \
96
+ axios@^1.7.7 \
97
+ express@^4.21.1 \
98
+ pino@^9.5.0 \
99
+ qrcode@^1.5.4 \
100
+ qrcode-terminal@^0.12.0 \
101
+ ytdl-core@^4.11.5 \
102
+ @distube/ytdl-core@^4.14.4 \
103
+ yt-search@^2.10.3 \
104
+ fluent-ffmpeg@^2.1.2 \
105
+ ffmpeg-static@^5.2.0 \
106
+ @ffmpeg-installer/ffmpeg@^1.1.0 \
107
+ @ffprobe-installer/ffprobe@^1.1.0 \
108
+ node-webpmux@^1.1.2 \
109
+ sharp@^0.32.1 \
110
+ cheerio@^1.0.0-rc.12 \
111
+ ms@^2.1.3 \
112
+ parse-ms@^3.0.0 \
113
+ libphonenumber-js@^1.9.50 \
114
+ google-tts-api@^2.0.2 \
115
+ form-data@^4.0.0 \
116
+ moment@^2.30.1 \
117
+ moment-timezone@^0.5.45 \
118
+ chalk@^4.1.2
119
+
120
+ # Agora instalar o restante das dependΓͺncias com versΓ΅es especΓ­ficas
121
+ RUN npm install --no-audit --progress=false \
122
+ pino-pretty@^11.3.0 \
123
+ https-proxy-agent@^7.0.2 \
124
+ socks-proxy-agent@^8.0.3 \
125
+ ws@^8.17.1 \
126
+ helmet@^7.1.0 \
127
+ cors@^2.8.5 \
128
+ rate-limiter-flexible@^4.1.2 \
129
+ fs-extra@^11.2.0 \
130
+ tmp-promise@^3.0.3 \
131
+ mime-types@^2.1.35 \
132
+ content-disposition@^0.5.4 \
133
+ async@^3.2.5 \
134
+ debug@^4.3.4 \
135
+ winston@^3.11.0 \
136
+ dotenv@^16.4.1 \
137
+ joi@^17.12.2 \
138
+ validator@^13.11.0 \
139
+ url-parse@^1.5.10 \
140
+ lru-cache@^10.2.0 \
141
+ node-cache@^5.1.2 \
142
+ node-fetch@^3.3.2 \
143
+ bufferutil@^4.0.8 \
144
+ utf-8-validate@^6.0.3
145
+
146
+ # ═══════════════════════════════════════════════════════════════════
147
+ # COPIAR CΓ“DIGO DA APLICAÇÃO
148
+ # ═══════════════════════════════════════════════════════════════════
149
+
150
+ COPY . .
151
 
152
  # ═══════════════════════════════════════════════════════════════════
153
  # ESTRUTURA MODULAR: Renomear 'classes' para 'modules' (HF Compatibility)
 
155
 
156
  RUN if [ -d ./classes ]; then mv ./classes ./modules; echo "βœ… MΓ³dulos configurados (classes β†’ modules)"; fi
157
 
158
+ # ═══════════════════════════════════════════════════════════════════
159
+ # CRIAR DIRETΓ“RIOS PARA O BOT
160
+ # ═══════════════════════════════════════════════════════════════════
161
+
162
+ RUN mkdir -p /app/auth_info_baileys /app/temp /app/database/data /app/database/datauser /app/database/subscriptions /app/logs
163
+
164
  # ═══════════════════════════════════════════════════════════════════
165
  # CRIAR USUÁRIO NΓƒO-ROOT
166
  # ═══════════════════════════════════════════════════════════════════
 
170
 
171
  # Ajusta permissΓ΅es
172
  RUN chown -R app:app /app && \
173
+ chown -R app:app /app/auth_info_baileys /app/temp /app/database /app/logs && \
 
174
  chmod 777 /tmp/pentest_results
175
 
176
  # ═══════════════════════════════════════════════════════════════════
 
178
  # ═══════════════════════════════════════════════════════════════════
179
 
180
  RUN echo "πŸ” Verificando ferramentas de pentesting..." && \
181
+ echo "Node.js: $(node --version)" && \
182
+ echo "npm: $(npm --version)" && \
183
  yt-dlp --version 2>&1 || echo "⚠️ yt-dlp" && \
184
  nmap --version 2>&1 | head -1 || echo "⚠️ nmap" && \
185
  python3 /opt/sqlmap/sqlmap.py --version 2>&1 | head -1 || echo "⚠️ sqlmap" && \
 
189
  command -v masscan 2>&1 || echo "⚠️ masscan" && \
190
  echo "βœ… VerificaΓ§Γ£o de ferramentas concluΓ­da"
191
 
192
+ # ═══════════════════════════════════════════════════════════════════
193
+ # VERIFICAR DEPENDÊNCIAS INSTALADAS
194
+ # ═══════════════════════════════════════════════════════════════════
195
+
196
+ RUN echo "πŸ“¦ Verificando dependΓͺncias Node.js..." && \
197
+ npm list --depth=0 2>&1 | grep -E "(rate-limiter-flexible|sharp|baileys|axios)" || echo "βœ… DependΓͺncias verificadas"
198
+
199
  # ═══════════════════════════════════════════════════════════════════
200
  # USUÁRIO NΓƒO-ROOT E EXPΓ•E PORTA
201
  # ═══════════════════════════════════════════════════════════════════
 
211
  CMD node -e "const p=process.env.PORT||7860; require('http').get(\`http://localhost:\${p}/health\`, (r) => process.exit(r.statusCode===200?0:1))"
212
 
213
  # Comando de inicializaΓ§Γ£o
214
+ CMD ["node", "index.js"]