1
0
mirror of https://github.com/azlux/botamusique synced 2024-11-23 13:56:17 +00:00

Compare commits

...

3 Commits

Author SHA1 Message Date
c590ab8eb1
Remove arm 32bits build
Removed since there are no node build for armv6 anymore
2023-10-24 17:27:44 +02:00
p00rt
2d145a0585
Fix the web interface & update the Dockerfile (#378)
* fix: update paths

* fix: change path

* fix: build the full image in one step

---------

Co-authored-by: knoflook <knoflook@disroot.org>
2023-10-24 17:07:58 +02:00
cc8fd9c30f
Update Dockerfile
https://docs.python.org/3.12/library/ssl.html#ssl.wrap_socket
Fonction removed into python 3.12, todo
2023-10-24 17:02:49 +02:00
5 changed files with 24 additions and 11 deletions

View File

@ -21,7 +21,7 @@ steps:
image: python:3 image: python:3
commands: commands:
- pip3 install jinja2 - pip3 install jinja2
- ./scripts/translate_templates.py --lang-dir lang/ --template-dir templates/ - ./scripts/translate_templates.py --lang-dir lang/ --template-dir web/templates/
when: when:
event: event:
- push - push
@ -101,7 +101,7 @@ steps:
image: python:3 image: python:3
commands: commands:
- pip3 install jinja2 - pip3 install jinja2
- ./scripts/translate_templates.py --lang-dir lang/ --template-dir templates/ - ./scripts/translate_templates.py --lang-dir lang/ --template-dir web/templates/
when: when:
event: event:
- push - push
@ -122,7 +122,7 @@ steps:
privileged: true privileged: true
settings: settings:
repo: azlux/botamusique repo: azlux/botamusique
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 platforms: linux/amd64,linux/arm64,linux/arm/v7
username: username:
from_secret: docker_username from_secret: docker_username
password: password:
@ -147,7 +147,7 @@ steps:
privileged: true privileged: true
settings: settings:
repo: azlux/botamusique repo: azlux/botamusique
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 platforms: linux/amd64,linux/arm64,linux/arm/v7
username: username:
from_secret: docker_username from_secret: docker_username
password: password:

View File

@ -1,3 +1,4 @@
ARG ARCH=
FROM python:3-slim-bullseye AS python-builder FROM python:3-slim-bullseye AS python-builder
ENV DEBIAN_FRONTEND=noninteractive ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /botamusique WORKDIR /botamusique
@ -6,19 +7,31 @@ RUN apt-get update \
&& apt-get install --no-install-recommends -y gcc g++ ffmpeg libjpeg-dev libmagic-dev opus-tools zlib1g-dev \ && apt-get install --no-install-recommends -y gcc g++ ffmpeg libjpeg-dev libmagic-dev opus-tools zlib1g-dev \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
COPY . /botamusique COPY . /botamusique
RUN python3 -m venv venv \ RUN python3 -m venv venv \
&& venv/bin/pip install wheel \ && venv/bin/pip install wheel \
&& venv/bin/pip install -r requirements.txt && venv/bin/pip install -r requirements.txt
FROM ${ARCH}node:14-bullseye-slim AS node-builder
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /botamusique/web
COPY --from=python-builder /botamusique /botamusique
RUN npm install
RUN npm run build
FROM python:3-slim-bullseye FROM ${ARCH}python:3-slim-bullseye AS template-builder
ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /botamusique
COPY --from=node-builder /botamusique /botamusique
RUN venv/bin/python scripts/translate_templates.py --lang-dir /botamusique/lang --template-dir /botamusique/web/templates
FROM python:3.11-slim-bullseye
ENV DEBIAN_FRONTEND noninteractive ENV DEBIAN_FRONTEND noninteractive
EXPOSE 8181 EXPOSE 8181
RUN apt update && \ RUN apt update && \
apt install --no-install-recommends -y opus-tools ffmpeg libmagic-dev curl tar && \ apt install --no-install-recommends -y opus-tools ffmpeg libmagic-dev curl tar && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
COPY --from=python-builder /botamusique /botamusique COPY --from=template-builder /botamusique /botamusique
WORKDIR /botamusique WORKDIR /botamusique
RUN chmod +x entrypoint.sh RUN chmod +x entrypoint.sh

View File

@ -33,7 +33,7 @@ ENV DEBIAN_FRONTEND=noninteractive
WORKDIR /botamusique WORKDIR /botamusique
COPY --from=python-builder /botamusique . COPY --from=python-builder /botamusique .
COPY --from=node-builder /botamusique/templates templates COPY --from=node-builder /botamusique/templates templates
RUN venv/bin/python scripts/translate_templates.py --lang-dir /botamusique/lang --template-dir /botamusique/templates RUN venv/bin/python scripts/translate_templates.py --lang-dir /botamusique/lang --template-dir /botamusique/web/templates
FROM ${ARCH}python:3-slim-bullseye FROM ${ARCH}python:3-slim-bullseye

View File

@ -96,7 +96,7 @@ python3 -m venv venv
venv/bin/pip install wheel venv/bin/pip install wheel
venv/bin/pip install -r requirements.txt venv/bin/pip install -r requirements.txt
(cd web && npm install && npm run build) (cd web && npm install && npm run build)
venv/bin/python3 ./scripts/translate_templates.py --lang-dir lang/ --template-dir templates/ venv/bin/python3 ./scripts/translate_templates.py --lang-dir lang/ --template-dir web/templates/
``` ```
</details> </details>

View File

@ -64,7 +64,7 @@ class ReverseProxied(object):
root_dir = os.path.dirname(__file__) root_dir = os.path.dirname(__file__)
web = Flask(__name__, template_folder=os.path.join(root_dir, "templates")) web = Flask(__name__, template_folder=os.path.join(root_dir, "web/templates"))
#web.config['TEMPLATES_AUTO_RELOAD'] = True #web.config['TEMPLATES_AUTO_RELOAD'] = True
log = logging.getLogger("bot") log = logging.getLogger("bot")
user = 'Remote Control' user = 'Remote Control'
@ -227,7 +227,7 @@ def get_all_dirs():
@web.route("/", methods=['GET']) @web.route("/", methods=['GET'])
@requires_auth @requires_auth
def index(): def index():
return open(os.path.join(root_dir, f"templates/index.{var.language}.html"), "r").read() return open(os.path.join(root_dir, f"web/templates/index.{var.language}.html"), "r").read()
@web.route("/playlist", methods=['GET']) @web.route("/playlist", methods=['GET'])