ten / Dockerfile
3v324v23's picture
Полностью переработан деплой для использования официального TEN-Agent
dbc3350
raw
history blame
1.98 kB
FROM ubuntu:22.04
# Установка базовых пакетов
RUN apt-get update && apt-get install -y \
curl \
git \
wget \
make \
gcc \
build-essential \
libasound2 \
libgstreamer1.0-dev \
libunwind-dev \
libc++1 \
libssl-dev \
python3 \
python3-venv \
python3-pip \
python3-dev \
unzip \
jq \
vim \
ca-certificates \
&& apt-get clean && rm -rf /var/lib/apt/lists/* && rm -rf /tmp/*
# Установка Go
RUN wget https://golang.org/dl/go1.21.0.linux-amd64.tar.gz && \
tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz && \
rm go1.21.0.linux-amd64.tar.gz
# Установка Task
ENV PATH=$PATH:/usr/local/go/bin
ENV GOPATH=/go
ENV PATH=$PATH:$GOPATH/bin
RUN mkdir -p /go && chmod 777 /go
RUN go install github.com/go-task/task/v3/cmd/task@latest
# Установка Node.js и pnpm
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && \
apt-get install -y nodejs && \
npm install -g pnpm
# Клонирование репозитория TEN-Agent
WORKDIR /app
RUN git clone --depth 1 https://github.com/TEN-framework/TEN-Agent.git /app
# Создание .env файла из окружения Hugging Face Space
RUN echo "\
AGORA_APP_ID=${AGORA_APP_ID}\n\
AGORA_APP_CERTIFICATE=${AGORA_APP_CERTIFICATE}\n\
AZURE_STT_KEY=${AZURE_STT_KEY}\n\
AZURE_STT_REGION=${AZURE_STT_REGION}\n\
AZURE_TTS_KEY=${AZURE_TTS_KEY}\n\
AZURE_TTS_REGION=${AZURE_TTS_REGION}\n\
OPENAI_API_KEY=${OPENAI_API_KEY}\n\
" > /app/.env
# Создаем стартовый скрипт для запуска на Hugging Face
COPY start.sh /app/start.sh
RUN chmod +x /app/start.sh
# Открываем порты (7860 для HF Space, 8080 для API, 49483 для дизайнера)
EXPOSE 7860 8080 49483 3000 3001 3002
# Запускаем TEN-Agent через официальный стартовый скрипт
CMD ["/app/start.sh"]