Commit 48dbbc08 authored by nanahira's avatar nanahira

add dockerfile

parent 798e50f6
# data files
/beta
/expansions
/specials
# build files
/bin
build
/obj
# dependencies
/event
/freetype
/sqlite3
/irrklang
/irrlicht*
# gframe additionals
/gframe/ygopro.ico
/gframe/ygopro.rc
/gframe/ygopro.aps
/gframe/ygopro.icns
/gframe/dirent.h
# git repos
/CustomTools
/DataEditorX
/Magic*
/pics
/Printer
/ygopro-*
/*-Cards
# libs
/*.dll
/*.so
/*.dylib
# windbot related files
/[Bb]ot
/[Bb]ot.conf
/[Bb]ot.exe
/[Bb]ot.sh
/[Ww]ind[Bb]ot
# ygopro config file
/system_user.conf
# ygopro folders
/deck
/pack
/fonts
/replay
/single
/screenshots
/sound/*.wav
/sound/custom
/sound/BGM
/sound/README.md
/sound/LICENSE
/sound/,*
/update
/update*
/locales
# ygopro main program
/ygopro
/ygopro_*
/ygopro.exe
/ygopro_*.exe
/ygopro.app
/ygopro_*.app
/premake4
/premake4.exe
/premake5
/premake5.exe
# others
*.log
.vscode
core*
/bak/
/.vs
/bug.txt
/output
/temp
[Tt]humbs.cdb
/PrinterData.txt
/*.bat
/*.sh
/*.sql
/patch.exe.manifest
/patch.exe
/diff.exe
Dockerfile
.dockerignore
/ocgcore
/script
/skin
/sound
/textures
/premake
/ikpmp3
/cards.cdb
/LICENSE
/README.md
/.gitignore
/strings.conf
/system.conf
FROM debian:buster-slim as git-checkout
RUN apt update && \
env DEBIAN_FRONTEND=noninteractive apt install -y git wget tar && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
WORKDIR /usr/src/app
COPY .git ./.git
RUN git checkout -f && \
git submodule update --init && \
git submodule foreach git checkout master && \
wget -O - https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-linux.tar.gz | tar zfx - && \
./premake5 gmake
FROM debian:buster-slim as builder
# apt
RUN apt update && \
env DEBIAN_FRONTEND=noninteractive apt install -y build-essential libsqlite3-dev libevent-dev liblua5.3-dev && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
WORKDIR /usr/src/app
COPY --from=git-checkout /usr/src/app/ ./
RUN cd build && \
make -j$(nproc) && \
cd .. && \
cp -rf bin/release/ygopro . && \
strip ygopro
FROM debian:buster-slim
# apt
RUN apt update && \
env DEBIAN_FRONTEND=noninteractive apt install -y libsqlite3-dev libevent-dev liblua5.3-dev && \
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
WORKDIR /usr/src/app
COPY --from=builder /usr/src/app/ygopro .
COPY --from=git-checkout /usr/src/app/script ./script
COPY ./lflist.conf .
ENTRYPOINT [ "./ygopro" ]
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment