sft0farid commited on
Commit
1e7e499
·
verified ·
1 Parent(s): 9e68154

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +10 -33
Dockerfile CHANGED
@@ -1,29 +1,15 @@
1
  # syntax=docker/dockerfile:1.4
2
 
3
- # Builder 1: Kiro-Go
4
- FROM golang:1.22-alpine AS kiro-builder
5
- RUN apk add --no-cache git
6
- RUN git clone https://github.com/Quorinex/Kiro-Go.git /src \
7
- && cd /src \
8
- && go build -o /kiro-go .
9
-
10
- # Builder 2: New API
11
- FROM golang:1.22-alpine AS newapi-builder
12
- RUN apk add --no-cache git curl unzip
13
- # Устанавливаем bun
14
- RUN curl -fsSL https://bun.sh/install | sh
15
- ENV PATH="/root/.bun/bin:$PATH"
16
- RUN git clone https://github.com/QuantumNous/new-api.git /src
17
- WORKDIR /src/web
18
- RUN bun install && DISABLE_ESLINT_PLUGIN='true' bun run build
19
- WORKDIR /src
20
- RUN go build -ldflags "-s -w" -o /new-api .
21
 
22
  # ─────────────────────────────────────────────
23
  FROM python:3.11-slim
24
 
25
  # 1. Системные зависимости + Node.js
26
- RUN apt-get update && apt-get install -y curl gnupg wget git supervisor \
27
  && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
28
  && apt-get install -y nodejs \
29
  && rm -rf /var/lib/apt/lists/*
@@ -35,17 +21,17 @@ RUN wget -q https://github.com/openziti/zrok/releases/download/v0.4.42/zrok_0.4.
35
  && chmod +x /usr/local/bin/zrok \
36
  && rm zrok_0.4.42_linux_amd64.tar.gz
37
 
38
- # 3. Бинарники из builder-стадий
39
- COPY --from=kiro-builder /kiro-go /usr/local/bin/kiro-go
40
- COPY --from=newapi-builder /new-api /usr/local/bin/new-api
41
- RUN chmod +x /usr/local/bin/kiro-go /usr/local/bin/new-api
 
42
 
43
  # 4. Non-root пользователь
44
  RUN useradd -m -u 1000 user
45
 
46
  # 5. Директории
47
  RUN mkdir -p \
48
- /app/aiclient2api \
49
  /data/aiclient2api/configs \
50
  /data/kirogo \
51
  /data/newapi \
@@ -122,15 +108,6 @@ RUN echo '#!/bin/bash'
122
  && echo 'exec /usr/bin/supervisord -c /data/supervisor/conf.d/supervisord.conf' >> /app/start.sh \
123
  && chmod +x /app/start.sh
124
 
125
- # 9. Устанавливаем приложения под user
126
- USER user
127
- WORKDIR /app
128
-
129
- # AIClient2API — latest main
130
- RUN git clone https://github.com/justlovemaki/AIClient2API.git /app/aiclient2api \
131
- && cd /app/aiclient2api \
132
- && npm install
133
-
134
  EXPOSE 7860
135
 
136
  CMD ["/app/start.sh"]
 
1
  # syntax=docker/dockerfile:1.4
2
 
3
+ # Источники готовых образов
4
+ FROM calciumion/new-api:latest AS newapi-source
5
+ FROM justlikemaki/aiclient-2-api:latest AS aiclient-source
6
+ FROM ghcr.io/quorinex/kiro-go:latest AS kirogo-source
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
 
8
  # ─────────────────────────────────────────────
9
  FROM python:3.11-slim
10
 
11
  # 1. Системные зависимости + Node.js
12
+ RUN apt-get update && apt-get install -y curl gnupg wget supervisor \
13
  && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
14
  && apt-get install -y nodejs \
15
  && rm -rf /var/lib/apt/lists/*
 
21
  && chmod +x /usr/local/bin/zrok \
22
  && rm zrok_0.4.42_linux_amd64.tar.gz
23
 
24
+ # 3. Копируем из готовых образов
25
+ COPY --from=newapi-source /app/new-api /usr/local/bin/new-api
26
+ COPY --from=kirogo-source /app/kiro-go /usr/local/bin/kiro-go
27
+ COPY --from=aiclient-source /app /app/aiclient2api
28
+ RUN chmod +x /usr/local/bin/new-api /usr/local/bin/kiro-go
29
 
30
  # 4. Non-root пользователь
31
  RUN useradd -m -u 1000 user
32
 
33
  # 5. Директории
34
  RUN mkdir -p \
 
35
  /data/aiclient2api/configs \
36
  /data/kirogo \
37
  /data/newapi \
 
108
  && echo 'exec /usr/bin/supervisord -c /data/supervisor/conf.d/supervisord.conf' >> /app/start.sh \
109
  && chmod +x /app/start.sh
110
 
 
 
 
 
 
 
 
 
 
111
  EXPOSE 7860
112
 
113
  CMD ["/app/start.sh"]