og-edopro-server-ts/Dockerfile.dev

48 lines
No EOL
2.2 KiB
Text

# Development Dockerfile
FROM public.ecr.aws/ubuntu/ubuntu:22.04_stable as core-integrator-builder
RUN apt-get update -y && \
apt-get install -y python3 python3-pip wget tar git && \
pip install conan
RUN conan profile detect
WORKDIR /app
COPY ./core .
RUN wget https://github.com/premake/premake-core/releases/download/v5.0.0-beta2/premake-5.0.0-beta2-linux.tar.gz && \
tar -zxvf premake-5.0.0-beta2-linux.tar.gz && \
rm premake-5.0.0-beta2-linux.tar.gz
RUN conan install . --build missing --output-folder=./dependencies --options=libcurl/8.6.0:shared=True && \
./premake5 gmake && \
make config=release
FROM public.ecr.aws/docker/library/node:22.11.0
RUN apt-get update && apt-get install -y curl git && apt-get install -y liblua5.3-dev libsqlite3-dev libevent-dev dumb-init
WORKDIR /app
RUN git clone --depth 1 https://github.com/ProjectIgnis/CardScripts.git ./scripts/evolution/ && \
git clone --depth 1 https://github.com/ProjectIgnis/BabelCDB.git ./databases/evolution/ && \
git clone --depth 1 https://github.com/ProjectIgnis/LFLists ./banlists/evolution/ && \
git clone --depth 1 https://github.com/mycard/ygopro-scripts.git ./mercury/script && \
git clone --depth 1 https://github.com/mycard/ygopro-scripts.git ./mercury/pre-releases/script && \
git clone --depth 1 https://github.com/mycard/ygopro-scripts.git ./mercury/alternatives/script && \
wget -O ./mercury/lflist.conf https://raw.githubusercontent.com/termitaklk/koishi-Iflist/main/lflist.conf && \
wget -O ./mercury/pre-releases/lflist.conf https://raw.githubusercontent.com/termitaklk/koishi-Iflist/main/lflist.conf && \
wget -O ./mercury/alternatives/lflist.conf https://raw.githubusercontent.com/termitaklk/koishi-Iflist/main/lflist.conf && \
wget -O ./mercury/cards.cdb https://github.com/purerosefallen/ygopro/raw/server/cards.cdb && \
wget -O ./mercury/pre-releases/cards.cdb https://github.com/purerosefallen/ygopro/raw/server/cards.cdb && \
wget -O ./mercury/alternatives/cards.cdb https://github.com/purerosefallen/ygopro/raw/server/cards.cdb
COPY package.json ./
COPY package-lock.json ./
RUN npm i
COPY . .
COPY .env ./
COPY --from=core-integrator-builder /app/CoreIntegrator ./core/CoreIntegrator
CMD ["npm", "run", "dev"]