From 3d7be663ecc4373800f56388971e69f96c63e9ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20=C5=A0ediv=C3=BD?= Date: Sun, 8 Sep 2024 11:52:47 +0200 Subject: [PATCH] move devs to client & server. --- .docker/.env.default | 11 ---------- .docker/build | 3 +-- .docker/rebuild-server | 25 ----------------------- .docker/serve-client | 29 -------------------------- .docker/start-server | 46 ------------------------------------------ client/dev/build | 10 +++++++++ client/dev/exec | 10 +++++++++ client/dev/npm | 10 +++++++++ client/dev/serve | 27 +++++++++++++++++++++++++ server/dev/start | 5 +++++ 10 files changed, 63 insertions(+), 113 deletions(-) delete mode 100755 .docker/rebuild-server delete mode 100755 .docker/serve-client delete mode 100755 .docker/start-server create mode 100755 client/dev/build create mode 100755 client/dev/exec create mode 100755 client/dev/npm create mode 100755 client/dev/serve diff --git a/.docker/.env.default b/.docker/.env.default index b15828d9..6fad99cc 100644 --- a/.docker/.env.default +++ b/.docker/.env.default @@ -5,14 +5,3 @@ # this is how will be your images called. you can change it to your fork. # only need to do this once. here. BUILD_IMAGE="m1k1o/neko" - -# this is where your services will be acessible -CLIENT_PORT=8080 -SERVER_PORT=8081 - -# on which image you want to test it -SERVER_TAG="chromium" - -# this is needed for WebRTC. specify your local IP address and free UDP port range. -SERVER_EPR=55000-55009 -SERVER_IP=10.8.0.1 diff --git a/.docker/build b/.docker/build index 2e288494..ad5f206d 100755 --- a/.docker/build +++ b/.docker/build @@ -27,10 +27,9 @@ then unset ENV_BUILD_IMAGE fi -if [ -z "${1}" ] && [ ! -z "${SERVER_TAG}" ] +if [ -z "${1}" ] then ./build base - ./build ${SERVER_TAG} exit 0 fi diff --git a/.docker/rebuild-server b/.docker/rebuild-server deleted file mode 100755 index d1a0f286..00000000 --- a/.docker/rebuild-server +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash - -if [ -f ".env.default" ] -then - export $(cat .env.default | sed 's/#.*//g' | xargs) -fi - -if [ -f ".env" ] -then - export $(cat .env | sed 's/#.*//g' | xargs) -fi - -# use -f to force rebuild -if [ "$(docker images -q neko_dev_server 2> /dev/null)" == "" ] || [ "$1" == "-f" ]; then - docker build -t neko_dev_server -f base/Dockerfile --target server ../ -fi - -docker run --rm -it \ - -v "${PWD}/../server:/src" \ - -e GIT_COMMIT=`git rev-parse --short HEAD` \ - -e GIT_BRANCH=`git rev-parse --symbolic-full-name --abbrev-ref HEAD` \ - -e GIT_DIRTY=`git diff-index --quiet HEAD -- || echo "✗-"` \ - --entrypoint="bash" \ - --workdir="/src" \ - neko_dev_server ./build diff --git a/.docker/serve-client b/.docker/serve-client deleted file mode 100755 index 0c2b36ee..00000000 --- a/.docker/serve-client +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash - -if [ -f ".env.default" ] -then - export $(cat .env.default | sed 's/#.*//g' | xargs) -fi - -if [ -f ".env" ] -then - export $(cat .env | sed 's/#.*//g' | xargs) -fi - -# use -i to install -if [ ! -d "${PWD}/../client/node_modules" ] || [ "$1" == "-i" ]; then - docker run --rm -it \ - -v "${PWD}/../client:/app" \ - --workdir="/app" \ - --entrypoint="npm" \ - node:18-bullseye-slim install -fi - -docker run --rm -it \ - -p "${CLIENT_PORT}:8080" \ - -v "${PWD}/../client:/app" \ - -e "VUE_APP_SERVER_PORT=${SERVER_PORT}" \ - --workdir="/app" \ - --entrypoint="npm" \ - node:18-bullseye-slim run serve - \ No newline at end of file diff --git a/.docker/start-server b/.docker/start-server deleted file mode 100755 index 49eeb785..00000000 --- a/.docker/start-server +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash - -if [ -f ".env.default" ] -then - export $(cat .env.default | sed 's/#.*//g' | xargs) -fi - -if [ -f ".env" ] -then - export $(cat .env | sed 's/#.*//g' | xargs) -fi - -BINARY_PATH="${PWD}/../server/bin/neko" - -# use -r to rebuild -if [ ! -f "${BINARY_PATH}" ] || [ "$1" == "-r" ]; then - ./rebuild-server -fi - -# if image starts with nvidia- add --gpus all -if [[ "${SERVER_TAG}" == "nvidia-"* ]]; then - GPU_FLAG="--gpus all" - echo "Nvidia GPU acceleration enabled" -fi - -# if image starts with intel- add --device /dev/dri -if [[ "${SERVER_TAG}" == "intel-"* ]]; then - GPU_FLAG="--device /dev/dri" - echo "Intel GPU acceleration enabled" -fi - -# use --gpus all to enable GPU acceleration -docker run --rm -it \ - --name "neko_dev" \ - $GPU_FLAG \ - -p "${SERVER_PORT}:8080" \ - -p "${SERVER_EPR}:${SERVER_EPR}/udp" \ - -e "NEKO_SCREEN=1920x1080@60" \ - -e "NEKO_EPR=${SERVER_EPR}" \ - -e "NEKO_NAT1TO1=${SERVER_IP}" \ - -e "NEKO_ICELITE=true" \ - -e "NEKO_MAX_FPS=25" \ - -v "${BINARY_PATH}:/usr/bin/neko" \ - --shm-size=2G \ - --cap-add SYS_ADMIN \ - ${BUILD_IMAGE}:${SERVER_TAG} diff --git a/client/dev/build b/client/dev/build new file mode 100755 index 00000000..5b010718 --- /dev/null +++ b/client/dev/build @@ -0,0 +1,10 @@ +#!/bin/sh +cd "$(dirname "$0")" + +# start component watch +docker run --rm -it \ + --user "$(id -u):$(id -g)" \ + --volume "${PWD}/../:/app" \ + --entrypoint="npm" \ + --workdir="/app" \ + node:18-bullseye-slim run build diff --git a/client/dev/exec b/client/dev/exec new file mode 100755 index 00000000..527e2fc0 --- /dev/null +++ b/client/dev/exec @@ -0,0 +1,10 @@ +#!/bin/sh +cd "$(dirname "$0")" + +# start component watch +docker run --rm -it \ + --user "$(id -u):$(id -g)" \ + --volume "${PWD}/../:/app" \ + --entrypoint="/bin/bash" \ + --workdir="/app" \ + node:18-bullseye-slim diff --git a/client/dev/npm b/client/dev/npm new file mode 100755 index 00000000..c821d152 --- /dev/null +++ b/client/dev/npm @@ -0,0 +1,10 @@ +#!/bin/sh +cd "$(dirname "$0")" + +# npm +docker run --rm -it \ + --user "$(id -u):$(id -g)" \ + --volume "${PWD}/../:/app" \ + --entrypoint="npm" \ + --workdir="/app" \ + node:18-bullseye-slim "$@" diff --git a/client/dev/serve b/client/dev/serve new file mode 100755 index 00000000..7f73aae9 --- /dev/null +++ b/client/dev/serve @@ -0,0 +1,27 @@ +#!/bin/bash +cd "$(dirname "$0")" + +if [ -z $VUE_APP_SERVER_PORT ]; then + VUE_APP_SERVER_PORT="3000" +fi + +echo "Using VUE_APP_SERVER_PORT: ${VUE_APP_SERVER_PORT}" + +# use -i to install +if [ ! -d "${PWD}/../node_modules" ] || [ "$1" == "-i" ]; then + docker run --rm -it \ + --volume "${PWD}/../:/app" \ + --workdir="/app" \ + --entrypoint="npm" \ + node:18-bullseye-slim install +fi + +# npm run serve +docker run --rm -it \ + -p 3001:3001 \ + -e "VUE_APP_SERVER_PORT=$VUE_APP_SERVER_PORT" \ + --user "$(id -u):$(id -g)" \ + --volume "${PWD}/../:/app" \ + --entrypoint="npm" \ + --workdir="/app" \ + node:18-bullseye-slim run serve -- --port 3001 diff --git a/server/dev/start b/server/dev/start index 210e61c0..d5de2f8b 100755 --- a/server/dev/start +++ b/server/dev/start @@ -36,6 +36,11 @@ if [ "$1" = "nvidia" ]; then echo "Starting nvidia docker image" EXTRAOPTS="--gpus all" CONFIG="config.nvidia.yml" +elif [ "$1" = "intel" ]; then + echo "Starting intel docker image" + EXTRAOPTS="--device /dev/dri" + # TODO: add intel config + # CONFIG="config.intel.yml" else echo "Starting default docker image" EXTRAOPTS=""