sft0farid commited on
Commit
ff92a94
·
verified ·
1 Parent(s): 9b4287f

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +21 -16
Dockerfile CHANGED
@@ -1,51 +1,54 @@
1
  # syntax=docker/dockerfile:1.4
2
  FROM python:3.11-slim
3
 
4
- # 1. Установка системных зависимостей (от имени root)
5
- RUN apt-get update && apt-get install -y \
 
 
 
6
  supervisor \
7
- curl \
8
  git \
9
  wget \
10
  && rm -rf /var/lib/apt/lists/*
11
 
12
- # 2. Установка zrok (качаем стабильный бинарник напрямую, без скриптов)
13
- # Это решает проблему с exit code 1
14
  RUN wget https://github.com/openziti/zrok/releases/download/v0.4.42/zrok_0.4.42_linux_amd64.tar.gz \
15
  && tar -xzf zrok_0.4.42_linux_amd64.tar.gz zrok \
16
  && mv zrok /usr/local/bin/ \
17
  && chmod +x /usr/local/bin/zrok \
18
  && rm zrok_0.4.42_linux_amd64.tar.gz
19
 
20
- # 3. Создание non-root пользователя для Hugging Face Spaces
21
  RUN useradd -m -u 1000 user
22
 
23
- # 4. Создание всех нужных абсолютных путей и выдача прав пользователю "user"
24
  RUN mkdir -p /data/aiclient2api /data/kirogo /data/bifrost /etc/supervisor/conf.d /var/log/supervisor /var/run/supervisor \
25
  && chown -R user:user /data /etc/supervisor /var/log/supervisor /var/run/supervisor
26
 
27
  # 5. Переключение на non-root пользователя
28
  USER user
29
-
30
- # 6. Установка рабочей директории
31
  WORKDIR /data
32
 
33
  # ============================================
34
- # SECTION: AIClient2API
35
  # ============================================
36
- RUN git clone https://github.com/user/AIClient2API.git /data/aiclient2api \
37
- && pip install --no-cache-dir -r /data/aiclient2api/requirements.txt
 
 
38
 
39
  # ============================================
40
- # SECTION: Kiro-go
41
  # ============================================
42
- RUN wget -O /data/kirogo/kiro-go https://github.com/user/kiro-go/releases/download/v1.0/kiro-go-linux-amd64 \
 
43
  && chmod +x /data/kirogo/kiro-go
44
 
45
  # ============================================
46
  # SECTION: Bifrost
47
  # ============================================
48
- RUN git clone https://github.com/user/bifrost.git /data/bifrost \
 
49
  && pip install --no-cache-dir -r /data/bifrost/requirements.txt
50
 
51
  # ============================================
@@ -70,7 +73,9 @@ stderr_logfile=/dev/stderr
70
  stderr_logfile_maxbytes=0
71
 
72
  [program:aiclient]
73
- command=python /data/aiclient2api/main.py --port 8081
 
 
74
  directory=/data/aiclient2api
75
  autostart=true
76
  autorestart=true
 
1
  # syntax=docker/dockerfile:1.4
2
  FROM python:3.11-slim
3
 
4
+ # 1. Установка системных зависимостей + Node.js (для AIClient2API) [1]
5
+ RUN apt-get update && apt-get install -y curl gnupg \
6
+ && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
7
+ && apt-get install -y \
8
+ nodejs \
9
  supervisor \
 
10
  git \
11
  wget \
12
  && rm -rf /var/lib/apt/lists/*
13
 
14
+ # 2. Установка zrok (качаем стабильный бинарник напрямую)
 
15
  RUN wget https://github.com/openziti/zrok/releases/download/v0.4.42/zrok_0.4.42_linux_amd64.tar.gz \
16
  && tar -xzf zrok_0.4.42_linux_amd64.tar.gz zrok \
17
  && mv zrok /usr/local/bin/ \
18
  && chmod +x /usr/local/bin/zrok \
19
  && rm zrok_0.4.42_linux_amd64.tar.gz
20
 
21
+ # 3. Создание non-root пользователя
22
  RUN useradd -m -u 1000 user
23
 
24
+ # 4. Создание всех нужных абсолютных путей
25
  RUN mkdir -p /data/aiclient2api /data/kirogo /data/bifrost /etc/supervisor/conf.d /var/log/supervisor /var/run/supervisor \
26
  && chown -R user:user /data /etc/supervisor /var/log/supervisor /var/run/supervisor
27
 
28
  # 5. Переключение на non-root пользователя
29
  USER user
 
 
30
  WORKDIR /data
31
 
32
  # ============================================
33
+ # SECTION: AIClient2API (Node.js) [1]
34
  # ============================================
35
+ # ВНИМАНИЕ: Замени ТВОЙ_НИК на реального автора, в поиске его не было
36
+ RUN git clone https://github.com/justlovemaki/AIClient2API.git /data/aiclient2api \
37
+ && cd /data/aiclient2api \
38
+ && npm install
39
 
40
  # ============================================
41
+ # SECTION: Kiro-go [12]
42
  # ============================================
43
+ # Используем найденный репозиторий Quorinex/Kiro-Go
44
+ RUN wget -O /data/kirogo/kiro-go https://github.com/Quorinex/Kiro-Go/releases/latest/download/kiro-go-linux-amd64 \
45
  && chmod +x /data/kirogo/kiro-go
46
 
47
  # ============================================
48
  # SECTION: Bifrost
49
  # ============================================
50
+ # ВНИМАНИЕ: Замени ТВОЙ_НИК на реального автора
51
+ RUN git clone https://github.com/maximhq/bifrost.git /data/bifrost \
52
  && pip install --no-cache-dir -r /data/bifrost/requirements.txt
53
 
54
  # ============================================
 
73
  stderr_logfile_maxbytes=0
74
 
75
  [program:aiclient]
76
+ # Для Node.js используем npm start и передаем порт через переменную окружения [1]
77
+ command=npm start
78
+ environment=PORT=8081
79
  directory=/data/aiclient2api
80
  autostart=true
81
  autorestart=true