Add Dockerfile build
This commit is contained in:
parent
1972dc3525
commit
1451ed705b
2 changed files with 53 additions and 0 deletions
48
Dockerfile
Normal file
48
Dockerfile
Normal file
|
@ -0,0 +1,48 @@
|
|||
ARG PYTHON_VERSION=3.11.0
|
||||
ARG POETRY_VERSION=1.5
|
||||
|
||||
FROM python:${PYTHON_VERSION} as staging
|
||||
|
||||
ARG APP_NAME=verbanote
|
||||
ARG APP_PATH=/verbanote
|
||||
ARG PYTHON_VERSION
|
||||
ARG POETRY_VERSION
|
||||
ARG VERBANOTE_OUTPUT_PATH=/transcriptions
|
||||
|
||||
ENV \
|
||||
PYTHONDONTWRITEBYTECODE=1 \
|
||||
PYTHONUNBUFFERED=1 \
|
||||
PYTHONFAULTHANDLER=1
|
||||
|
||||
ENV \
|
||||
POETRY_VERSION=${POETRY_VERSION} \
|
||||
POETRY_HOME=/opt/poetry \
|
||||
POETRY_VIRTUALENVS_IN_PROJECT=true \
|
||||
POETRY_NO_INTERACTION=1
|
||||
|
||||
# installing poetry
|
||||
RUN curl -sSL https://install.python-poetry.org | python3 -
|
||||
ENV PATH="${POETRY_HOME}/bin:${PATH}"
|
||||
|
||||
WORKDIR ${APP_PATH}
|
||||
COPY ./poetry.lock ./pyproject.toml ./
|
||||
COPY ./${APP_NAME} ./${APP_NAME}
|
||||
|
||||
# --------------
|
||||
|
||||
FROM staging as worker
|
||||
ARG APP_NAME
|
||||
ARG APP_PATH
|
||||
ARG VERBANOTE_OUTPUT_PATH
|
||||
ENV APP_NAME=${APP_NAME}
|
||||
ENV APP_PATH=${APP_PATH}
|
||||
ENV VERBANOTE_OUTPUT_PATH=${VERBANOTE_OUTPUT_PATH}
|
||||
|
||||
WORKDIR ${APP_PATH}
|
||||
RUN poetry install
|
||||
RUN mkdir -p ${VERBANOTE_OUTPUT_PATH}
|
||||
|
||||
COPY ./docker/docker-entrypoint.sh /docker-entrypoint.sh
|
||||
RUN chmod +x /docker-entrypoint.sh
|
||||
ENTRYPOINT [ "/docker-entrypoint.sh" ]
|
||||
CMD [ "python", "-u", "${APP_PATH}/{${APP_NAME}/rp_handler.py" ]
|
5
docker/docker-entrypoint.sh
Normal file
5
docker/docker-entrypoint.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
#!/usr/bin/env sh
|
||||
#
|
||||
|
||||
set -e
|
||||
eval "exec $@"
|
Loading…
Reference in a new issue