MB-IDK commited on
Commit
2fb3101
·
verified ·
1 Parent(s): 1217469

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +30 -18
Dockerfile CHANGED
@@ -1,30 +1,42 @@
1
  FROM debian:bullseye-slim
2
 
3
- # Installation de Tor et HAProxy
4
- RUN apt-get update && apt-get install -y \
5
- tor \
6
- haproxy \
7
- procps \
8
- && rm -rf /var/lib/apt/lists/*
9
 
10
- # Création des dossiers de données pour 10 instances
11
- RUN mkdir -p /var/lib/tor-instances && chown -R debian-tor:debian-tor /var/lib/tor-instances
12
 
13
- # Script de démarrage pour lancer les 10 instances + HAProxy
14
  RUN echo '#!/bin/bash \n\
15
- for i in {0..9}; do \n\
 
16
  port=$((9050 + i)) \n\
17
- mkdir -p /var/lib/tor-instances/$i \n\
18
- chown -R debian-tor:debian-tor /var/lib/tor-instances/$i \n\
19
- tor --SocksPort $port --DataDirectory /var/lib/tor-instances/$i --RunAsDaemon 1 \n\
20
  done \n\
21
- haproxy -f /etc/haproxy/haproxy.cfg -db' > /entrypoint.sh && chmod +x /entrypoint.sh
 
 
22
 
23
- # Copier la config HAProxy
24
- COPY haproxy.cfg /etc/haproxy/haproxy.cfg
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
 
26
- # Hugging Face utilise le port 7860 par défaut
 
27
  EXPOSE 7860
28
 
29
- # Lancer le script (en restant en utilisateur root pour configurer Tor au départ)
30
  CMD ["/entrypoint.sh"]
 
1
  FROM debian:bullseye-slim
2
 
3
+ # Installation
4
+ RUN apt-get update && apt-get install -y tor haproxy procps && rm -rf /var/lib/apt/lists/*
 
 
 
 
5
 
6
+ # Création d'un dossier de travail accessible à l'utilisateur 1000
7
+ RUN mkdir -p /tmp/tor && chown -R 1000:1000 /tmp/tor
8
 
9
+ # Script d'entrée robuste
10
  RUN echo '#!/bin/bash \n\
11
+ # Lancer 5 instances (pour économiser la RAM au début) \n\
12
+ for i in {0..4}; do \n\
13
  port=$((9050 + i)) \n\
14
+ mkdir -p /tmp/tor/$i \n\
15
+ tor --SocksPort $port --DataDirectory /tmp/tor/$i --RunAsDaemon 1 \n\
 
16
  done \n\
17
+ echo "Instances Tor démarrées..." \n\
18
+ # Lancer HAProxy au premier plan \n\
19
+ haproxy -f /etc/haproxy/haproxy.cfg' > /entrypoint.sh && chmod +x /entrypoint.sh
20
 
21
+ # Config HAProxy (ajustée pour 5 instances)
22
+ RUN echo "defaults \n\
23
+ mode tcp \n\
24
+ timeout connect 5s \n\
25
+ timeout client 1m \n\
26
+ timeout server 1m \n\
27
+ frontend tor_front \n\
28
+ bind *:7860 \n\
29
+ default_backend tor_back \n\
30
+ backend tor_back \n\
31
+ balance roundrobin \n\
32
+ server t0 127.0.0.1:9050 check \n\
33
+ server t1 127.0.0.1:9051 check \n\
34
+ server t2 127.0.0.1:9052 check \n\
35
+ server t3 127.0.0.1:9053 check \n\
36
+ server t4 127.0.0.1:9054 check" > /etc/haproxy/haproxy.cfg
37
 
38
+ # Switch vers l'utilisateur Hugging Face
39
+ USER 1000
40
  EXPOSE 7860
41
 
 
42
  CMD ["/entrypoint.sh"]