lnbits/Dockerfile

45 lines
998 B
Docker
Raw Normal View History

2021-02-18 21:20:55 +00:00
# Build image
FROM python:3.7-slim as builder
2020-04-21 12:12:29 +00:00
2021-02-18 21:20:55 +00:00
# Setup virtualenv
ENV VIRTUAL_ENV=/opt/venv
RUN python3 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
# Install build deps
RUN apt-get update
RUN apt-get install -y --no-install-recommends build-essential
# Install runtime deps
COPY requirements.txt /tmp/requirements.txt
RUN pip install -r /tmp/requirements.txt
# Install c-lightning specific deps
RUN pip install pylightning
# Install LND specific deps
RUN pip install lndgrpc purerpc
# Production image
FROM python:3.7-slim as lnbits
# Copy over virtualenv
ENV VIRTUAL_ENV="/opt/venv"
COPY --from=builder $VIRTUAL_ENV $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
# Setup Quart
ENV QUART_APP="lnbits.app:create_app()"
ENV QUART_ENV="development"
ENV QUART_DEBUG="true"
# App
ENV LNBITS_BIND="0.0.0.0:5000"
# Copy in app source
2020-04-21 12:12:29 +00:00
WORKDIR /app
2021-02-18 21:20:55 +00:00
COPY lnbits /app/lnbits
2020-04-21 12:12:29 +00:00
EXPOSE 5000
2021-02-18 21:20:55 +00:00
CMD quart assets && quart migrate && hypercorn -k trio --bind $LNBITS_BIND 'lnbits.app:create_app()'