opex792 commited on
Commit
4aaf5e9
·
verified ·
1 Parent(s): 111fc06

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +4 -8
Dockerfile CHANGED
@@ -8,8 +8,6 @@ WORKDIR /code
8
  ENV DEBIAN_FRONTEND=noninteractive
9
 
10
  # 1. Установка системных зависимостей
11
- # - ffmpeg: требуется для ab-av1
12
- # - curl, build-essential, pkg-config, libssl-dev, git: требуются для установки Rust и сборки пакетов
13
  RUN apt-get update && apt-get install -y \
14
  ffmpeg \
15
  curl \
@@ -21,27 +19,25 @@ RUN apt-get update && apt-get install -y \
21
  && rm -rf /var/lib/apt/lists/*
22
 
23
  # 2. Установка Rust и Cargo
24
- # Устанавливаем rustup (менеджер версий Rust) и добавляем cargo в PATH
25
  ENV PATH="/root/.cargo/bin:${PATH}"
26
  RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
27
 
28
  # 3. Установка ab-av1 с помощью Cargo
29
- # Используем --git для установки последней версии из репозитория
30
- # Это может занять несколько минут во время сборки образа
31
  RUN cargo install --git https://github.com/alexheretic/ab-av1
32
 
33
  # 4. Настройка Python-окружения
34
- # Копируем файл с зависимостями и устанавливаем их
35
  COPY ./requirements.txt /code/requirements.txt
36
  RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
37
 
38
  # Копируем код нашего приложения
39
  COPY ./app /code/app
40
 
 
 
 
 
41
  # Открываем порт 7860, на котором будет работать API
42
  EXPOSE 7860
43
 
44
  # 5. Запуск приложения
45
- # Запускаем uvicorn сервер, который будет обслуживать наше FastAPI приложение
46
- # --host 0.0.0.0 делает его доступным извне контейнера
47
  CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"]
 
8
  ENV DEBIAN_FRONTEND=noninteractive
9
 
10
  # 1. Установка системных зависимостей
 
 
11
  RUN apt-get update && apt-get install -y \
12
  ffmpeg \
13
  curl \
 
19
  && rm -rf /var/lib/apt/lists/*
20
 
21
  # 2. Установка Rust и Cargo
 
22
  ENV PATH="/root/.cargo/bin:${PATH}"
23
  RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
24
 
25
  # 3. Установка ab-av1 с помощью Cargo
 
 
26
  RUN cargo install --git https://github.com/alexheretic/ab-av1
27
 
28
  # 4. Настройка Python-окружения
 
29
  COPY ./requirements.txt /code/requirements.txt
30
  RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
31
 
32
  # Копируем код нашего приложения
33
  COPY ./app /code/app
34
 
35
+ # --- ИСПРАВЛЕНИЕ ОШИБКИ ПРАВ ДОСТУПА ---
36
+ # Создаем директории для данных во время сборки, чтобы избежать PermissionError
37
+ RUN mkdir -p /code/data/uploads /code/data/outputs /code/data/logs
38
+
39
  # Открываем порт 7860, на котором будет работать API
40
  EXPOSE 7860
41
 
42
  # 5. Запуск приложения
 
 
43
  CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "7860"]