egg (or chicken)
Signed-off-by: Arthur Khachaturov <me@wzray.ru>
This commit is contained in:
commit
8ed52d1c79
20 changed files with 11719 additions and 0 deletions
38
puppy/Dockerfile
Normal file
38
puppy/Dockerfile
Normal file
|
@ -0,0 +1,38 @@
|
|||
#check=skip=JSONArgsRecommended
|
||||
FROM debian:12-slim AS builder
|
||||
RUN apt-get update && DEBIAN_FRONTEND=noninteracive apt-get install -y \
|
||||
--no-install-recommends cmake g++-mingw-w64-i686-posix make && \
|
||||
apt-get clean && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /build
|
||||
COPY . .
|
||||
RUN --mount=type=cache,target=cmake-build cmake -B cmake-build \
|
||||
-DCMAKE_CXX_COMPILER=i686-w64-mingw32-g++ && cmake --build cmake-build -j$(nproc) && \
|
||||
cp cmake-build/promt-puppy.exe .
|
||||
|
||||
FROM debian:12-slim AS runner
|
||||
ENV WINEPREFIX=/wineprefix \
|
||||
DEBIAN_FRONTEND=noninteracive
|
||||
RUN sed -i 's/main/main contrib/' /etc/apt/sources.list.d/debian.sources && \
|
||||
dpkg --add-architecture i386 && apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
winetricks wine64 wine32:i386 xvfb xauth ca-certificates cabextract && \
|
||||
wineboot -i && echo "Sleeping for 15 seconds..." && sleep 15
|
||||
|
||||
COPY build/ $WINEPREFIX/drive_c
|
||||
RUN xvfb-run -a winetricks -q mfc42 && \
|
||||
wine regedit $WINEPREFIX/drive_c/registry.reg && \
|
||||
apt remove -y --autoremove --purge xvfb winetricks && \
|
||||
apt-get clean && rm -rf /var/lib/apt/lists/* && \
|
||||
ln -sf /cache $WINEPREFIX/drive_c/cache && \
|
||||
mkdir /tmpfs && ln -sf /tmpfs $WINEPREFIX/drive_c/tmpfs && \
|
||||
echo "Sleeping for 15 seconds" && sleep 15
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY --from=builder /build/promt-puppy.exe .
|
||||
|
||||
EXPOSE 80/tcp
|
||||
VOLUME /cache
|
||||
|
||||
CMD exec wine promt-puppy.exe
|
Loading…
Add table
Add a link
Reference in a new issue