From 52b8c0a713273ee4393cbe1cd9bc5ce73b21d668 Mon Sep 17 00:00:00 2001 From: Maik H Date: Sat, 19 Feb 2022 00:08:11 +0100 Subject: [PATCH] adds new Dockerfile to run rootless --- docker/Dockerfile.rootless | 52 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 docker/Dockerfile.rootless diff --git a/docker/Dockerfile.rootless b/docker/Dockerfile.rootless new file mode 100644 index 000000000..220c2dad6 --- /dev/null +++ b/docker/Dockerfile.rootless @@ -0,0 +1,52 @@ +FROM python:3.9.9-slim-bullseye as base + +# Setup env +ENV LANG C.UTF-8 +ENV LC_ALL C.UTF-8 +ENV PYTHONDONTWRITEBYTECODE 1 +ENV PYTHONFAULTHANDLER 1 +ENV PATH=/root/.local/bin:$PATH +ENV FT_APP_ENV="docker" + +# Prepare environment +RUN mkdir /freqtrade \ + && apt-get update \ + && apt-get -y install sudo libatlas3-base curl sqlite3 libhdf5-serial-dev \ + && apt-get clean + +WORKDIR /freqtrade + +# Install dependencies +FROM base as python-deps +RUN apt-get update \ + && apt-get -y install build-essential libssl-dev git libffi-dev libgfortran5 pkg-config cmake gcc \ + && apt-get clean \ + && pip install --upgrade pip + +# Install TA-lib +COPY build_helpers/* /tmp/ +RUN cd /tmp && /tmp/install_ta-lib.sh && rm -r /tmp/*ta-lib* +ENV LD_LIBRARY_PATH /usr/local/lib + +# Install dependencies +COPY requirements.txt requirements-hyperopt.txt /freqtrade/ +RUN pip install --user --no-cache-dir numpy \ + && pip install --user --no-cache-dir -r requirements-hyperopt.txt + +# Copy dependencies to runtime-image +FROM base as runtime-image +COPY --from=python-deps /usr/local/lib /usr/local/lib +ENV LD_LIBRARY_PATH /usr/local/lib + +COPY --from=python-deps /root/.local /root/.local + +# Install and execute +COPY . /freqtrade/ + +RUN pip install -e . --user --no-cache-dir --no-build-isolation \ + && mkdir /freqtrade/user_data/ \ + && freqtrade install-ui + +ENTRYPOINT ["freqtrade"] +# Default to trade mode +CMD [ "trade" ]