mirror of
https://github.com/RYDE-WORK/ballistica.git
synced 2026-02-04 22:43:17 +08:00
docker in ballistica :o
This commit is contained in:
parent
591b90a5fe
commit
acb42d1ff4
4
Makefile
4
Makefile
@ -222,6 +222,10 @@ pcommandbatch_speed_test: env
|
|||||||
|
|
||||||
# Prebuilt binaries for various platforms.
|
# Prebuilt binaries for various platforms.
|
||||||
|
|
||||||
|
docker-linux-x86-64-server-release-build:
|
||||||
|
$(PCOMMAND) build_docker
|
||||||
|
|
||||||
|
|
||||||
# WSL is Linux but running under Windows, so it can target either. By default
|
# WSL is Linux but running under Windows, so it can target either. By default
|
||||||
# we want these top level targets (prefab-gui-debug, etc.) to yield native
|
# we want these top level targets (prefab-gui-debug, etc.) to yield native
|
||||||
# Windows builds from WSL, but this env var can be set to override that.
|
# Windows builds from WSL, but this env var can be set to override that.
|
||||||
|
|||||||
32
src/assets/docker/Dockerfile
Normal file
32
src/assets/docker/Dockerfile
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
FROM ubuntu:24.04
|
||||||
|
|
||||||
|
ENV LANG en_US.utf8
|
||||||
|
ENV LANGUAGE=en_US
|
||||||
|
ARG BOMBSQUAD_VERSION=N/A
|
||||||
|
|
||||||
|
ARG SOURCE_DIR=.
|
||||||
|
|
||||||
|
RUN DEBIAN_FRONTEND=noninteractive \
|
||||||
|
apt-get update -y && \
|
||||||
|
apt-get install -y \
|
||||||
|
python3.12-dev \
|
||||||
|
libsdl2-dev \
|
||||||
|
libvorbisfile3 \
|
||||||
|
freeglut3-dev \
|
||||||
|
libopenal-dev
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
RUN apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/* /tmp/*
|
||||||
|
|
||||||
|
WORKDIR ${SOURCE_DIR}
|
||||||
|
|
||||||
|
COPY ${SOURCE_DIR} ./
|
||||||
|
|
||||||
|
LABEL bombsquad_version=$BOMBSQUAD_VERSION
|
||||||
|
|
||||||
|
CMD [ "./ballisticakit_server" ]
|
||||||
|
|
||||||
|
# this does not port forward locally
|
||||||
|
# its just a hint for user which port to forward
|
||||||
|
EXPOSE 43210/udp
|
||||||
@ -644,3 +644,20 @@ def cmake_prep_dir(dirname: str, verbose: bool = False) -> None:
|
|||||||
else:
|
else:
|
||||||
if verbose:
|
if verbose:
|
||||||
print(f'{Clr.BLD}{title}:{Clr.RST} Keeping existing build dir.')
|
print(f'{Clr.BLD}{title}:{Clr.RST} Keeping existing build dir.')
|
||||||
|
|
||||||
|
def _docker_build(image_name,
|
||||||
|
dockerfile_dir,
|
||||||
|
bombsquad_version,
|
||||||
|
source_dir) -> None:
|
||||||
|
|
||||||
|
build_cmd = ['docker','image','build',
|
||||||
|
'-t',image_name,
|
||||||
|
dockerfile_dir,
|
||||||
|
'--build-arg', f'BOMBSQUAD_VERSION={bombsquad_version}',
|
||||||
|
'--build-arg', f'SOURCE_DIR={source_dir}']
|
||||||
|
|
||||||
|
subprocess.run(build_cmd,check=True)
|
||||||
|
|
||||||
|
# add option to toggle between prefab and cmake
|
||||||
|
def docker_build() -> None:
|
||||||
|
_docker_build('bsquad','src/assets/docker/','1.7.69','build/prefab/full/linux_x86_64_server/release')
|
||||||
@ -104,6 +104,7 @@ from batools.pcommands import (
|
|||||||
ensure_prefab_platform,
|
ensure_prefab_platform,
|
||||||
prefab_run_var,
|
prefab_run_var,
|
||||||
prefab_binary_path,
|
prefab_binary_path,
|
||||||
|
build_docker,
|
||||||
make_prefab,
|
make_prefab,
|
||||||
lazybuild,
|
lazybuild,
|
||||||
efro_gradle,
|
efro_gradle,
|
||||||
|
|||||||
@ -666,6 +666,12 @@ def prefab_binary_path() -> None:
|
|||||||
end='',
|
end='',
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def build_docker() -> None:
|
||||||
|
pass
|
||||||
|
import subprocess
|
||||||
|
import batools.build
|
||||||
|
batools.build.docker_build()
|
||||||
|
|
||||||
|
|
||||||
def make_prefab() -> None:
|
def make_prefab() -> None:
|
||||||
"""Run prefab builds for the current platform."""
|
"""Run prefab builds for the current platform."""
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user