Ricky01anjay commited on
Commit
8962ee8
·
verified ·
1 Parent(s): 4cf711d

Create Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +33 -0
Dockerfile ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Menggunakan Node.js versi terbaru yang stabil
2
+ FROM node:20-slim
3
+
4
+ # Set working directory
5
+ WORKDIR /app
6
+
7
+ # Install library langsung tanpa package.json
8
+ RUN npm install fast-http-proxy
9
+
10
+ # Membuat file server.js secara inline
11
+ # Kode ini menangani routing /fetch?url= dan mendukung GET, POST, PUT, DELETE, dll.
12
+ RUN echo 'const proxy = require("fast-http-proxy"); \
13
+ const http = require("http"); \
14
+ const url = require("url"); \
15
+ const server = http.createServer((req, res) => { \
16
+ const parsedUrl = url.parse(req.url, true); \
17
+ if (parsedUrl.pathname === "/fetch" && parsedUrl.query.url) { \
18
+ const target = parsedUrl.query.url; \
19
+ proxy(target)(req, res); \
20
+ } else { \
21
+ res.writeHead(404); \
22
+ res.end("Gunakan /fetch?url=http://example.com"); \
23
+ } \
24
+ }); \
25
+ server.listen(7860, "0.0.0.0", () => { \
26
+ console.log("Proxy server berjalan di port 7860"); \
27
+ });' > server.js
28
+
29
+ # Ekspos port yang digunakan Hugging Face (7860)
30
+ EXPOSE 7860
31
+
32
+ # Jalankan aplikasi
33
+ CMD ["node", "server.js"]