mirror of
https://github.com/AsgardEternal/SquadJSDocker.git
synced 2024-12-28 09:39:19 -06:00
50 lines
1.1 KiB
Docker
50 lines
1.1 KiB
Docker
# syntax=docker/dockerfile:1.4
|
|
|
|
# hadolint global ignore=DL3003,DL3008
|
|
|
|
FROM debian:bullseye-slim AS setup
|
|
|
|
ARG squadjs_version="3.7.0"
|
|
|
|
ENV USER="squadjs"
|
|
ENV USER_HOME="/home/${USER}"
|
|
ENV SQUADJS_DIR="${USER_HOME}/SquadJS/"
|
|
|
|
COPY --chown=root:root --chmod=0744 ./scripts/prepare-node14-yarn.bash /root/prepare-node14-yarn.bash
|
|
SHELL [ "/bin/bash", "-c" ]
|
|
|
|
RUN <<__EOR__
|
|
printf "Creating user\n"
|
|
useradd -m "${USER}"
|
|
|
|
printf "Installing Prereqs\n"
|
|
/root/prepare-node14-yarn.bash
|
|
apt-get update
|
|
apt-get install -y --no-install-suggests --no-install-recommends \
|
|
yarn \
|
|
nodejs \
|
|
git \
|
|
sqlite3
|
|
|
|
su "${USER}" - <<- __EOC__
|
|
(
|
|
git clone --depth 1 https://github.com/AsgardEternal/SquadJS.git "${USER_HOME}/SquadJS"
|
|
cd "${USER_HOME}/SquadJS" || exit 1
|
|
yarn install
|
|
yarn cache clean
|
|
)
|
|
__EOC__
|
|
|
|
apt-get remove git yarn
|
|
rm -rf /var/lib/apt/lists/* /root/prepare-node14-yarn.bash
|
|
|
|
__EOR__
|
|
|
|
FROM setup as prod
|
|
|
|
USER "${USER}"
|
|
WORKDIR "${USER_HOME}/SquadJS"
|
|
COPY ./scripts/entry.sh .
|
|
COPY ./squadjsPlugins/*/*.js "${USER_HOME}/SquadJS/squad-server/plugins/"
|
|
ENTRYPOINT ["/bin/sh", "entry.sh"]
|