🚚 Refactor and simplify backend file structure (#609)
This commit is contained in:

committed by
GitHub

parent
a065f9c9e8
commit
73b2884057
8
src/backend/.dockerignore
Normal file
8
src/backend/.dockerignore
Normal file
@@ -0,0 +1,8 @@
|
||||
# Python
|
||||
__pycache__
|
||||
app.egg-info
|
||||
*.pyc
|
||||
.mypy_cache
|
||||
.coverage
|
||||
htmlcov
|
||||
.venv
|
3
src/backend/.gitignore
vendored
3
src/backend/.gitignore
vendored
@@ -1,3 +1,6 @@
|
||||
__pycache__
|
||||
app.egg-info
|
||||
*.pyc
|
||||
.mypy_cache
|
||||
.coverage
|
||||
htmlcov
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
[alembic]
|
||||
# path to migration scripts
|
||||
script_location = alembic
|
||||
script_location = app/alembic
|
||||
|
||||
# template used to generate migration files
|
||||
# file_template = %%(rev)s_%%(slug)s
|
3
src/backend/app/.gitignore
vendored
3
src/backend/app/.gitignore
vendored
@@ -1,3 +0,0 @@
|
||||
.mypy_cache
|
||||
.coverage
|
||||
htmlcov
|
@@ -9,17 +9,18 @@ RUN curl -sSL https://install.python-poetry.org | POETRY_HOME=/opt/poetry python
|
||||
poetry config virtualenvs.create false
|
||||
|
||||
# Copy poetry.lock* in case it doesn't exist in the repo
|
||||
COPY ./app/pyproject.toml ./app/poetry.lock* /app/
|
||||
COPY ./pyproject.toml ./poetry.lock* /app/
|
||||
|
||||
# Allow installing dev dependencies to run tests
|
||||
ARG INSTALL_DEV=false
|
||||
RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --only main ; fi"
|
||||
|
||||
# For development, Jupyter remote kernel, Hydrogen
|
||||
# Using inside the container:
|
||||
# jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888
|
||||
ARG INSTALL_JUPYTER=false
|
||||
RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; fi"
|
||||
|
||||
COPY ./app /app
|
||||
ENV PYTHONPATH=/app
|
||||
|
||||
COPY ./alembic.ini /app/
|
||||
|
||||
COPY ./prestart.sh /app/
|
||||
|
||||
COPY ./tests-start.sh /app/
|
||||
|
||||
COPY ./app /app/app
|
||||
|
@@ -9,26 +9,21 @@ RUN curl -sSL https://install.python-poetry.org | POETRY_HOME=/opt/poetry python
|
||||
poetry config virtualenvs.create false
|
||||
|
||||
# Copy poetry.lock* in case it doesn't exist in the repo
|
||||
COPY ./app/pyproject.toml ./app/poetry.lock* /app/
|
||||
COPY ./pyproject.toml ./poetry.lock* /app/
|
||||
|
||||
# Allow installing dev dependencies to run tests
|
||||
ARG INSTALL_DEV=false
|
||||
RUN bash -c "if [ $INSTALL_DEV == 'true' ] ; then poetry install --no-root ; else poetry install --no-root --only main ; fi"
|
||||
|
||||
# For development, Jupyter remote kernel, Hydrogen
|
||||
# Using inside the container:
|
||||
# jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888
|
||||
ARG INSTALL_JUPYTER=false
|
||||
RUN bash -c "if [ $INSTALL_JUPYTER == 'true' ] ; then pip install jupyterlab ; fi"
|
||||
|
||||
ENV C_FORCE_ROOT=1
|
||||
|
||||
COPY ./app /app
|
||||
WORKDIR /app
|
||||
|
||||
ENV PYTHONPATH=/app
|
||||
|
||||
COPY ./app/worker-start.sh /worker-start.sh
|
||||
COPY ./alembic.ini /app/
|
||||
|
||||
COPY ./worker-start.sh /worker-start.sh
|
||||
|
||||
COPY ./app /app/app
|
||||
|
||||
RUN chmod +x /worker-start.sh
|
||||
|
||||
|
@@ -49,32 +49,28 @@ services:
|
||||
ports:
|
||||
- "8888:8888"
|
||||
volumes:
|
||||
- ./backend/app:/app
|
||||
- ./backend/:/app
|
||||
environment:
|
||||
- JUPYTER=jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888
|
||||
- SERVER_HOST=http://${DOMAIN?Variable not set}
|
||||
build:
|
||||
context: ./backend
|
||||
dockerfile: backend.dockerfile
|
||||
args:
|
||||
INSTALL_DEV: ${INSTALL_DEV-true}
|
||||
INSTALL_JUPYTER: ${INSTALL_JUPYTER-true}
|
||||
# command: sleep infinity # Infinite loop to keep container alive doing nothing
|
||||
command: /start-reload.sh
|
||||
|
||||
celeryworker:
|
||||
volumes:
|
||||
- ./backend/app:/app
|
||||
- ./backend/:/app
|
||||
environment:
|
||||
- RUN=celery worker -A app.worker -l info -Q main-queue -c 1
|
||||
- JUPYTER=jupyter lab --ip=0.0.0.0 --allow-root --NotebookApp.custom_display_url=http://127.0.0.1:8888
|
||||
- SERVER_HOST=http://${DOMAIN?Variable not set}
|
||||
build:
|
||||
context: ./backend
|
||||
dockerfile: celeryworker.dockerfile
|
||||
args:
|
||||
INSTALL_DEV: ${INSTALL_DEV-true}
|
||||
INSTALL_JUPYTER: ${INSTALL_JUPYTER-true}
|
||||
|
||||
frontend:
|
||||
build:
|
||||
|
Reference in New Issue
Block a user