commit 3db3802cb2cd724b5597cbe4c6f7d44074a41691 Author: stuzer05 Date: Tue Feb 4 14:42:48 2025 +0200 Initial diff --git a/.gitea/workflows/build-docker-image.yaml b/.gitea/workflows/build-docker-image.yaml new file mode 100644 index 0000000..46e9b86 --- /dev/null +++ b/.gitea/workflows/build-docker-image.yaml @@ -0,0 +1,34 @@ +name: build docker image + +on: + - push + +jobs: + docker-build: + runs-on: ubuntu-latest + container: + image: catthehacker/ubuntu:act-latest + steps: + - uses: actions/checkout@v3 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: gitea.stuzer.link + username: ${{ gitea.repository_owner }} + password: ${{ secrets.DOCKER_REGISTRY_TOKEN }} + + - name: Build and push + uses: docker/build-push-action@v6 + with: + platforms: linux/amd64 + push: true + tags: gitea.stuzer.link/stuzer05/docker-script-server:latest + cache-from: type=registry,ref=gitea.stuzer.link/stuzer05/docker-script-server:latest + cache-to: type=inline \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..37ef624 --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.idea +app/runners/* +!app/runners/.gitkeep +app/scripts/* +!app/scripts/.gitkeep \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..f779d6b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,24 @@ +FROM alpine:latest + +ENV TZ=Europe/Kyiv +ARG VERSION=1.18.0 + +RUN apk add --update --no-cache \ + tzdata \ + python3 \ + py3-pip \ + curl \ + bash \ + && rm -rf /var/cache/apk/* && mkdir -p /app mkdir -p /app/conf \ + && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \ + && wget https://github.com/bugy/script-server/releases/download/$VERSION/script-server.zip -O /tmp/script-server.zip +COPY app/conf.json /app/conf/conf.json + +WORKDIR /app + +RUN unzip /tmp/script-server.zip -d /app && rm -rfv /tmp/script-server.zip && \ + pip install --break-system-packages -r requirements.txt + +EXPOSE 5000 + +CMD [ "python3", "launcher.py" ] diff --git a/app/admin-conf.json b/app/admin-conf.json new file mode 100644 index 0000000..08e64e7 --- /dev/null +++ b/app/admin-conf.json @@ -0,0 +1,7 @@ +{ + "title": "Script server", + "port": "5000", + "access": { + "admin_users": [ "*" ] + } +} diff --git a/app/conf.json b/app/conf.json new file mode 100644 index 0000000..e55aac3 --- /dev/null +++ b/app/conf.json @@ -0,0 +1,4 @@ +{ + "title": "Script server", + "port": "5000" +} diff --git a/app/runners/.gitkeep b/app/runners/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/app/scripts/.gitkeep b/app/scripts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/app/themes/dark/darkBackground_header.jpg b/app/themes/dark/darkBackground_header.jpg new file mode 100644 index 0000000..857980c Binary files /dev/null and b/app/themes/dark/darkBackground_header.jpg differ diff --git a/app/themes/dark/darkBackground_login.jpg b/app/themes/dark/darkBackground_login.jpg new file mode 100644 index 0000000..91820a7 Binary files /dev/null and b/app/themes/dark/darkBackground_login.jpg differ diff --git a/app/themes/dark/theme.css b/app/themes/dark/theme.css new file mode 100644 index 0000000..cdfac1b --- /dev/null +++ b/app/themes/dark/theme.css @@ -0,0 +1,42 @@ +html:root { + --hover-color: rgba(255, 255, 255, 0.04); + --focus-color: rgba(255, 255, 255, 0.12); + --focus-color-solid: #424242; + + --font-color-main: rgba(255, 255, 255, 0.87); + --font-color-medium: rgba(255, 255, 255, 0.60); + --font-color-disabled: rgba(255, 255, 255, 0.38); + + --primary-color: #dce775; + --primary-color-raised-hover-solid: #E6F17F; + --primary-color-raised-focus-solid: #FAFF93; + --primary-color-when-focused: rgba(0, 0, 0, 0.12); + --primary-color-when-hovered: rgba(0, 0, 0, 0.04); + --font-on-primary-color-main: rgba(0, 0, 0, 0.87); + --font-on-primary-color-medium: rgba(0, 0, 0, 0.60); + + --primary-color-dark-color: #a8b545; + --primary-color-dark-when-focused: rgba(0, 0, 0, 0.12); + --primary-color-dark-when-hovered: rgba(0, 0, 0, 0.04); + --font-on-primary-color-dark-main: rgba(0, 0, 0, 0.87); + --font-on-primary-color-dark-medium: rgba(0, 0, 0, 0.60); + + --primary-color-light-color: #F0F4C3; + + --surface-color: #121212; + + --background-color: #242424; + --background-color-slight-emphasis: rgba(255, 255, 255, 0.05); + --background-color-high-emphasis: rgba(255, 255, 255, 0.09); + --background-color-level-4dp: rgba(255, 255, 255, 0.09); + --background-color-level-8dp: rgba(255, 255, 255, 0.12); + --background-color-level-16dp: rgba(255, 255, 255, 0.15); + --background-color-disabled: rgba(255, 255, 255, 0.12); + + --script-header-background: url('../theme/darkBackground_header.jpg') center / cover no-repeat; + --login-header-background: url('../theme/darkBackground_login.jpg') center / cover no-repeat; + + --separator-color: #424242; + + --outline-color: rgba(255, 255, 255, 0.18); +} diff --git a/app/themes/orange/theme.css b/app/themes/orange/theme.css new file mode 100644 index 0000000..9ab40ea --- /dev/null +++ b/app/themes/orange/theme.css @@ -0,0 +1,14 @@ +html:root { + + --primary-color: #E64A19; + --primary-color-raised-hover-solid: #F05423; + --primary-color-raised-focus-solid: #FF7241; + + --primary-color-dark-color: #BF360C; + + --primary-color-light-color: #FBE9E7; + + --script-header-background: #FFCC80; + --login-header-background: var(--primary-color-dark-color); + +} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..918acd5 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,13 @@ +services: + script-server: + restart: unless-stopped + environment: + - TZ=Europe/Kyiv + ports: + - 5000:5000 + volumes: + - ./app/conf.json:/app/conf/conf.json + - ./app/runners/:/app/conf/runners + - ./app/scripts:/app/conf/scripts + image: gitea.stuzer.link/stuzer05/docker-script-server:latest + container_name: script-server