46 lines
1.5 KiB
Docker
46 lines
1.5 KiB
Docker
FROM node:latest AS builder
|
|
ADD https://git.tanshu.com/api/v1/repos/tanshu/barker/tags /tags.json
|
|
RUN git clone --single-branch --depth 1 --branch latest https://git.tanshu.com/tanshu/barker.git /app
|
|
WORKDIR /app/bookie
|
|
RUN npm install --unsafe-perm && /app/bookie/node_modules/.bin/ng build
|
|
|
|
|
|
FROM python:latest
|
|
LABEL maintainer="Amritanshu <docker@tanshu.com>"
|
|
|
|
ADD https://git.tanshu.com/tanshu/barker/raw/tag/latest/barker/pyproject.toml /app/pyproject.toml
|
|
|
|
RUN apt-get update && \
|
|
apt-get install -y locales && \
|
|
sed --in-place --expression='s/# en_IN UTF-8/en_IN UTF-8/' /etc/locale.gen && \
|
|
dpkg-reconfigure --frontend=noninteractive locales
|
|
|
|
ENV LANG en_IN
|
|
ENV LC_ALL en_IN
|
|
|
|
# Install Poetry
|
|
RUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/install-poetry.py | POETRY_HOME=/opt/poetry python && \
|
|
cd /usr/local/bin && \
|
|
ln -s /opt/poetry/bin/poetry && \
|
|
poetry config virtualenvs.create false
|
|
|
|
WORKDIR /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 --no-dev ; fi"
|
|
|
|
COPY --from=builder /app/barker /app
|
|
COPY --from=builder /app/frontend /app/frontend
|
|
|
|
ENV PYTHONPATH=/app
|
|
EXPOSE 80
|
|
VOLUME /frontend
|
|
|
|
RUN chmod 777 /app/docker-entrypoint.sh \
|
|
&& ln -s /app/docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh \
|
|
&& ln -s /app/docker-entrypoint.sh /
|
|
ENTRYPOINT ["docker-entrypoint.sh"]
|
|
|
|
CMD ["poetry", "run", "python", "-m", "barker"]
|