Can build with docker on Windows

This commit is contained in:
Usow Maxim 2025-05-12 08:11:29 +07:00
parent ac20676b3a
commit 231c0bce7e
2 changed files with 40 additions and 0 deletions

View File

@ -11,6 +11,7 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
g++ \ g++ \
make \ make \
cmake \ cmake \
pkg-config \
xauth \ xauth \
gdb \ gdb \
gdbserver \ gdbserver \
@ -25,8 +26,17 @@ RUN apt-get update && apt-get install --no-install-recommends -y \
libvorbis-dev \ libvorbis-dev \
libcurl4-openssl-dev \ libcurl4-openssl-dev \
ca-certificates \ ca-certificates \
wget \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
# Установка CMake >= 3.26 вручную
ARG CMAKE_VERSION=3.27.9
RUN wget https://github.com/Kitware/CMake/releases/download/v${CMAKE_VERSION}/cmake-${CMAKE_VERSION}-linux-x86_64.sh && \
chmod +x cmake-${CMAKE_VERSION}-linux-x86_64.sh && \
./cmake-${CMAKE_VERSION}-linux-x86_64.sh --skip-license --prefix=/usr/local && \
rm cmake-${CMAKE_VERSION}-linux-x86_64.sh
# Install EnTT # Install EnTT
RUN git clone https://github.com/skypjack/entt.git && \ RUN git clone https://github.com/skypjack/entt.git && \
cd entt/build && \ cd entt/build && \

View File

@ -140,6 +140,8 @@ cmake --build --preset default-vs-msvc-windows
See <https://docs.docker.com/engine/install> See <https://docs.docker.com/engine/install>
### Do you have Linux
### Step 1. Build docker container ### Step 1. Build docker container
```sh ```sh
@ -157,3 +159,31 @@ docker run --rm -it -v$(pwd):/project voxel-engine bash -c "cmake -DCMAKE_BUILD_
```sh ```sh
docker run --rm -it -v$(pwd):/project -v/tmp/.X11-unix:/tmp/.X11-unix -v${XAUTHORITY}:/home/user/.Xauthority:ro -eDISPLAY --network=host voxel-engine ./build/VoxelEngine docker run --rm -it -v$(pwd):/project -v/tmp/.X11-unix:/tmp/.X11-unix -v${XAUTHORITY}:/home/user/.Xauthority:ro -eDISPLAY --network=host voxel-engine ./build/VoxelEngine
``` ```
### Do you have Windows
### Step 1. You need to install VcXsrv
### Step 2. Run VcXsrv with the command
```powershell
.\vcxsrv.exe :0 -multiwindow -ac
```
### Step 3. Build docker container
```powershell
docker build -t voxel-engine .
```
### Step 4. Build project using the docker container
```powershell
docker run --rm -it -v "${PWD}:/project" voxel-engine bash -c "cmake -DCMAKE_BUILD_TYPE=Release -Bbuild && cmake --build build"
```
### Step 5. Run project using the docker container
```powershell
docker run --rm -it -v "${PWD}:/project" -e DISPLAY=host.docker.internal:0.0 --network host voxel-engine ./build/VoxelEngine
```