simplify Dockerfiles to use pre-built dist/eris instead of uv build

Remove all build-dependency packages (glfw-dev, cmake, git, python3-dev,
libX11, mesa, etc.) that were only needed for building eris's Python deps
from source. Replace uv + source install with COPY dist/eris. Use
python3 /usr/local/bin/eris for ENTRYPOINT to avoid shebang portability
issues.
This commit is contained in:
Andrew Hamilton 2026-07-30 12:24:32 +10:00
parent daba0d3eb4
commit e35e2aefd5
5 changed files with 20 additions and 44 deletions

View file

@ -2,14 +2,11 @@
FROM alpine:3.24 FROM alpine:3.24
RUN apk add gcc g++ make sudo python3-dev musl-dev git cmake glfw-dev pkgconfig libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxext-dev wayland-dev libxkbcommon-dev mesa-dev RUN apk add sudo python3
RUN wget -qO- https://astral.sh/uv/install.sh | sh COPY dist/eris /usr/local/bin/eris
ENV PATH="/root/.local/bin:${PATH}" RUN python3 /usr/local/bin/eris --install-all-tools
COPY . eris
RUN uv tool install --python 3.14 ./eris
RUN eris --install-all-tools
ENTRYPOINT ["eris"] ENTRYPOINT ["python3", "/usr/local/bin/eris"]
# docker build -t eris -f packaging/Dockerfile.arch . # docker build -t eris -f packaging/Dockerfile.arch .

View file

@ -2,15 +2,11 @@
FROM archlinux:latest FROM archlinux:latest
RUN pacman -Sy --noconfirm gcc python make git cmake glfw pkg-config libx11 libxcursor libxrandr libxinerama libxi libxext wayland libxkbcommon mesa sudo RUN pacman -Sy --noconfirm sudo python
RUN curl -LsSf https://astral.sh/uv/install.sh | sh COPY dist/eris /usr/local/bin/eris
ENV PATH="/root/.local/bin:${PATH}" RUN python3 /usr/local/bin/eris --install-all-tools
COPY . eris
RUN uv tool install --python 3.14 ./eris
RUN chmod a+rwx -R /root
RUN eris --install-all-tools
ENTRYPOINT ["eris"] ENTRYPOINT ["python3", "/usr/local/bin/eris"]
# docker build -t eris -f packaging/Dockerfile.arch . # docker build -t eris -f packaging/Dockerfile.arch .

View file

@ -2,17 +2,11 @@
FROM debian:trixie FROM debian:trixie
RUN apt-get update RUN apt-get update && apt-get install -y sudo python3
RUN apt-get install -y build-essential curl git cmake libglfw3-dev pkg-config libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxext-dev libwayland-dev libxkbcommon-dev libegl1-mesa-dev python3-dev COPY dist/eris /usr/local/bin/eris
RUN curl -LsSf https://astral.sh/uv/install.sh | sh RUN python3 /usr/local/bin/eris --install-all-tools
ENV PATH="/root/.local/bin:${PATH}"
COPY . eris
RUN uv tool install --python 3.14 ./eris
RUN chmod a+rwx -R /root
RUN apt-get install -y sudo
RUN eris --install-all-tools
ENTRYPOINT ["eris"] ENTRYPOINT ["python3", "/usr/local/bin/eris"]
# docker build -t eris -f packaging/Dockerfile.debian . # docker build -t eris -f packaging/Dockerfile.debian .

View file

@ -2,16 +2,11 @@
FROM fedora:44 FROM fedora:44
RUN dnf -y install gcc gcc-c++ make curl git cmake glfw-devel pkgconfig libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel libXi-devel libXext-devel wayland-devel libxkbcommon-devel mesa-libEGL-devel python3-devel RUN dnf -y install sudo python3
RUN curl -LsSf https://astral.sh/uv/install.sh | sh COPY dist/eris /usr/local/bin/eris
ENV PATH="/root/.local/bin:${PATH}" RUN python3 /usr/local/bin/eris --install-all-tools
COPY . eris
RUN uv tool install --python 3.14 ./eris
RUN chmod a+rwx -R /root
RUN dnf -y install sudo
RUN eris --install-all-tools
ENTRYPOINT ["eris"] ENTRYPOINT ["python3", "/usr/local/bin/eris"]
# docker build -t eris -f packaging/Dockerfile.fedora . # docker build -t eris -f packaging/Dockerfile.fedora .

View file

@ -2,17 +2,11 @@
FROM ubuntu:26.04 FROM ubuntu:26.04
RUN apt-get update RUN apt-get update && apt-get install -y sudo python3
RUN apt-get install -y build-essential curl git cmake libglfw3-dev pkg-config libx11-dev libxcursor-dev libxrandr-dev libxinerama-dev libxi-dev libxext-dev libwayland-dev libxkbcommon-dev libegl1-mesa-dev python3-dev COPY dist/eris /usr/local/bin/eris
RUN curl -LsSf https://astral.sh/uv/install.sh | sh RUN python3 /usr/local/bin/eris --install-all-tools
ENV PATH="/root/.local/bin:${PATH}"
COPY . eris
RUN uv tool install --python 3.14 ./eris
RUN chmod a+rwx -R /root
RUN apt-get install -y sudo
RUN eris --install-all-tools
ENTRYPOINT ["eris"] ENTRYPOINT ["python3", "/usr/local/bin/eris"]
# docker build -t eris -f packaging/Dockerfile.ubuntu . # docker build -t eris -f packaging/Dockerfile.ubuntu .