65 lines
1.6 KiB
Docker
65 lines
1.6 KiB
Docker
FROM ubuntu:oracular
|
|
# Stick with Python3.12 (plucky has 3.13)
|
|
|
|
# Install some utilities frequently used
|
|
RUN apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
curl \
|
|
gpg \
|
|
iputils-ping \
|
|
jq \
|
|
nano \
|
|
rsync \
|
|
wget \
|
|
python3 \
|
|
python3-pip \
|
|
# python3-venv \
|
|
# python3-dev \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log}
|
|
|
|
# Install packages required for voicebot
|
|
RUN apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
libgl1 \
|
|
libglib2.0-0t64 \
|
|
git \
|
|
iproute2 \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log}
|
|
|
|
# Install Intel graphics runtimes
|
|
RUN apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common \
|
|
&& add-apt-repository -y ppa:kobuk-team/intel-graphics \
|
|
&& apt-get update \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y \
|
|
libze-intel-gpu1 \
|
|
libze1 \
|
|
intel-ocloc \
|
|
intel-opencl-icd \
|
|
xpu-smi \
|
|
clinfo \
|
|
&& apt-get clean \
|
|
&& rm -rf /var/lib/apt/lists/{apt,dpkg,cache,log}
|
|
|
|
# Install uv using the official Astral script
|
|
RUN curl -Ls https://astral.sh/uv/install.sh | bash
|
|
ENV PATH=/root/.local/bin:$PATH
|
|
|
|
WORKDIR /voicebot
|
|
|
|
# Copy code and entrypoint
|
|
COPY ./voicebot /voicebot
|
|
COPY ./shared /shared
|
|
COPY ./voicebot/entrypoint.sh /entrypoint.sh
|
|
RUN chmod +x /entrypoint.sh
|
|
|
|
# Set environment variable for production mode (default: development)
|
|
ENV PRODUCTION=false
|
|
|
|
# the cache and target directories are on different filesystems, hardlinking may not be supported.
|
|
ENV UV_LINK_MODE=copy
|
|
|
|
ENTRYPOINT ["/entrypoint.sh"]
|