mirror of
https://github.com/Aider-AI/aider.git
synced 2025-05-20 04:14:59 +00:00
Implemented a multi-stage Dockerfile to reduce the final image size by removing build dependencies.
This commit is contained in:
parent
6c437c0d7a
commit
60ad0dee25
1 changed files with 12 additions and 5 deletions
|
@ -1,14 +1,21 @@
|
|||
FROM python:3.10-slim
|
||||
# Build stage
|
||||
FROM python:3.10-slim AS builder
|
||||
COPY . /aider
|
||||
|
||||
# Unfortunately to build the multi-arch docker image we need `build-essential` for amd64.
|
||||
# Apparently py-tree-sitter-languages doesn't have a pre-built binary wheel?
|
||||
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -y build-essential git libportaudio2 && \
|
||||
apt-get install --no-install-recommends -y build-essential git && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
pip install --no-cache-dir /aider && \
|
||||
rm -rf /aider
|
||||
|
||||
# Final stage
|
||||
FROM python:3.10-slim
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -y git libportaudio2 && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY --from=builder /usr/local/lib/python3.10/site-packages /usr/local/lib/python3.10/site-packages
|
||||
COPY --from=builder /usr/local/bin/aider /usr/local/bin/aider
|
||||
|
||||
WORKDIR /app
|
||||
ENTRYPOINT ["aider"]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue