mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-31 09:08:30 +01:00
This does all the code changes to allow 513 testing, once this all seems about correct it should be merged even if the servers aren't using 513. All changes will be made in a backwards compatible way so that this whole process should be harmless.
97 lines
2.5 KiB
Docker
97 lines
2.5 KiB
Docker
FROM tgstation/byond:513.1490 as base
|
|
|
|
FROM base as build_base
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
git \
|
|
ca-certificates
|
|
|
|
FROM build_base as rust_g
|
|
|
|
WORKDIR /rust_g
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
libssl-dev \
|
|
pkg-config \
|
|
curl \
|
|
gcc-multilib \
|
|
&& curl https://sh.rustup.rs -sSf | sh -s -- -y --default-host i686-unknown-linux-gnu \
|
|
&& git init \
|
|
&& git remote add origin https://github.com/tgstation/rust-g
|
|
|
|
COPY dependencies.sh .
|
|
|
|
RUN /bin/bash -c "source dependencies.sh \
|
|
&& git fetch --depth 1 origin \$RUST_G_VERSION" \
|
|
&& git checkout FETCH_HEAD \
|
|
&& ~/.cargo/bin/cargo build --release
|
|
|
|
FROM build_base as bsql
|
|
|
|
WORKDIR /bsql
|
|
|
|
RUN apt-get install -y --no-install-recommends software-properties-common \
|
|
&& add-apt-repository ppa:ubuntu-toolchain-r/test \
|
|
&& apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
cmake \
|
|
make \
|
|
g++-7 \
|
|
libmariadb-client-lgpl-dev \
|
|
&& git init \
|
|
&& git remote add origin https://github.com/tgstation/BSQL
|
|
|
|
COPY dependencies.sh .
|
|
|
|
RUN /bin/bash -c "source dependencies.sh \
|
|
&& git fetch --depth 1 origin \$BSQL_VERSION" \
|
|
&& git checkout FETCH_HEAD
|
|
|
|
WORKDIR /bsql/artifacts
|
|
|
|
ENV CC=gcc-7 CXX=g++-7
|
|
|
|
RUN ln -s /usr/include/mariadb /usr/include/mysql \
|
|
&& ln -s /usr/lib/i386-linux-gnu /root/MariaDB \
|
|
&& cmake .. \
|
|
&& make
|
|
|
|
FROM base as dm_base
|
|
|
|
WORKDIR /tgstation
|
|
|
|
FROM dm_base as build
|
|
|
|
COPY . .
|
|
|
|
RUN DreamMaker -max_errors 0 tgstation.dme && tools/deploy.sh /deploy
|
|
|
|
FROM dm_base
|
|
|
|
EXPOSE 1337
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends software-properties-common \
|
|
&& add-apt-repository ppa:ubuntu-toolchain-r/test \
|
|
&& apt-get update \
|
|
&& apt-get upgrade -y \
|
|
&& apt-get dist-upgrade -y \
|
|
&& apt-get install -y --no-install-recommends \
|
|
libmariadb2 \
|
|
mariadb-client \
|
|
libssl1.0.0 \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& mkdir -p /root/.byond/bin
|
|
|
|
COPY --from=rust_g /rust_g/target/release/librust_g.so /root/.byond/bin/rust_g
|
|
COPY --from=bsql /bsql/artifacts/src/BSQL/libBSQL.so ./
|
|
COPY --from=build /deploy ./
|
|
|
|
#bsql fexists memes
|
|
RUN ln -s /tgstation/libBSQL.so /root/.byond/bin/libBSQL.so
|
|
|
|
VOLUME [ "/tgstation/config", "/tgstation/data" ]
|
|
|
|
ENTRYPOINT [ "DreamDaemon", "tgstation.dmb", "-port", "1337", "-trusted", "-close", "-verbose" ]
|