Updates the Tiles build

This commit is contained in:
FrozenFOXX
2020-05-25 23:52:42 -07:00
parent 2f6a9f8181
commit 065e62455a

View File

@@ -1,33 +1,63 @@
# Base image # Builder image
FROM ubuntu:20.04 FROM ubuntu:20.04 AS builder
# Variables # Variables
ENV CRAWL_REPO="https://github.com/crawl/crawl.git" \ ENV CRAWL_REPO="https://github.com/crawl/crawl.git" \
BUILD_DEPS="autoconf bison build-essential flex git liblua5.1-0-dev libncursesw5-dev \ APP_DEPS="libsdl2-image-dev libsdl2-mixer-dev libsdl2-dev \
libfreetype6-dev libpng-dev ttf-dejavu-core advancecomp pngcrush" \
BUILD_DEPS="autoconf bison build-essential flex git libncursesw5-dev \
libsqlite3-dev libz-dev pkg-config binutils-gold libsdl2-image-dev libsdl2-mixer-dev \ libsqlite3-dev libz-dev pkg-config binutils-gold libsdl2-image-dev libsdl2-mixer-dev \
libsdl2-dev libfreetype6-dev libpng-dev ttf-dejavu-core advancecomp pngcrush" \ libsdl2-dev libfreetype6-dev libpng-dev ttf-dejavu-core advancecomp pngcrush" \
APP_DEPS="bzip2 python3-minimal python3-pip python3-yaml ncurses-term locales-all sqlite3 libpcre3 locales lsof sudo libbot-basicbot-perl" \
DEBIAN_FRONTEND=noninteractive DEBIAN_FRONTEND=noninteractive
# Logic # Install packages for the build
RUN apt-get update && \ RUN apt-get update && \
apt-get upgrade -y && \ apt-get upgrade -y && \
apt-get install -y ${BUILD_DEPS} ${APP_DEPS} apt-get install -y ${BUILD_DEPS} ${APP_DEPS}
# Install Tornado
RUN pip3 install tornado
# Retrieve crawl # Retrieve crawl
RUN git clone ${CRAWL_REPO} /src/ RUN git clone ${CRAWL_REPO} /src/
# Build crawl # Build crawl
RUN cd /src/crawl-ref/source && \ RUN cd /src/crawl-ref/source && \
make -j4 USE_DGAMELAUNCH=y TILES=y make install -j4 DESTDIR=/app/ USE_DGAMELAUNCH=y WEBTILES=y
# Clean up unnecessary packages # Set up webserver components
RUN apt-get remove -y ${BUILD_DEPS} && \ RUN cp -r /src/crawl-ref/source/webserver /app/ && \
apt-get autoremove --purge -y && \ cp -r /src/crawl-ref/source/util /app/
rm -rf /var/lib/apt/lists/*
# Runtime image
FROM ubuntu:20.04
# Environment Variables
ENV APP_DEPS="libsdl2-image-dev libsdl2-mixer-dev libsdl2-dev \
libfreetype6-dev libpng-dev ttf-dejavu-core advancecomp pngcrush" \
DATA_DIR=/data \
DEBIAN_FRONTEND=noninteractive
# Install packages for the runtime
RUN apt-get update && \
apt-get upgrade -y && \
apt-get install -y ${APP_DEPS}
# Copy over the compiled files
COPY --from=builder /app/ /app/
# Copy over custom configs
COPY settings/init.txt /app/settings/
# Adjustments for the container
RUN mkdir -p /data/rcs && \
mkdir -p /data/webserver
# Clean up unnecessary package lists
RUN rm -rf /var/lib/apt/lists/*
# Expose ports # Expose ports
EXPOSE 8080 EXPOSE 8080
# Set the WORKDIR
WORKDIR /app
# Launch WebTiles server
CMD [ "./webserver/server.py" ]