diff --git a/.dockerignore b/.dockerignore index c4546ea5..cfc9ab4e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,3 +1,3 @@ .git .venv -ui/ +cd diff --git a/.gitignore b/.gitignore index fa02d578..217b9af2 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ # compiled output /frontend/dist +/ui/dist # dependencies **/node_modules/* diff --git a/Dockerfile b/Dockerfile index 6723114b..28aa9cf3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,8 @@ -FROM node:lts-alpine AS npm_builder +FROM node:lts-alpine AS node_builder -WORKDIR /ytptube -COPY frontend ./ -RUN npm ci && npm run build +WORKDIR /app +COPY ui ./ +RUN yarn install --production --prefer-offline --frozen-lockfile && yarn run generate FROM python:3.11-alpine AS python_builder @@ -44,7 +44,7 @@ COPY entrypoint.sh / RUN sed -i 's/\r$//g' /entrypoint.sh && chmod +x /entrypoint.sh COPY --chown=app:app ./app /app/app -COPY --chown=app:app --from=npm_builder /ytptube/dist /app/frontend/dist +COPY --chown=app:app --from=node_builder /app/exported /app/ui/dist COPY --chown=app:app --from=python_builder /app/.venv /opt/python COPY --chown=app:app ./healthcheck.sh /usr/local/bin/healthcheck diff --git a/app/main.py b/app/main.py index 25a54c1e..e5c4d253 100644 --- a/app/main.py +++ b/app/main.py @@ -594,7 +594,7 @@ class Main: if not self.appLoader: with open(os.path.join( os.path.dirname(os.path.dirname(os.path.realpath(__file__))), - 'frontend/dist/index.html' + 'ui/dist/index.html' ), 'r') as f: self.appLoader = f.read() @@ -809,7 +809,7 @@ class Main: 'X-Via': 'memory' if not item.get('file', None) else 'disk', }) - staticDir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'frontend/dist') + staticDir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'ui/dist') for root, _, files in os.walk(staticDir): for file in files: if file.endswith('.map'): @@ -838,7 +838,7 @@ class Main: self.app.on_response_prepare.append(on_prepare) except ValueError as e: - if 'frontend/dist' in str(e): + if 'ui/dist' in str(e): raise RuntimeError('Could not find the frontend UI static assets.') from e raise e