diff --git a/Dockerfile b/Dockerfile index f612f12..cde9b5d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,37 @@ -FROM python:2.7.18-alpine +FROM debian:trixie AS build WORKDIR /app -COPY install_deps.sh requirements.txt ./ -RUN ./install_deps.sh +COPY requirements.txt . + +RUN apt-get update; apt-get install -y portaudio19-dev libzmq3-dev make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev curl git libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev alsa-utils musl-dev + +ENV HOME="/root" + +RUN git clone --depth=1 https://github.com/pyenv/pyenv.git ${HOME}/.pyenv +ENV PYENV_ROOT="${HOME}/.pyenv" +ENV PATH="${PYENV_ROOT}/shims:${PYENV_ROOT}/bin:${PATH}" + +ENV PYTHON_VERSION=2.7.18 +RUN pyenv install ${PYTHON_VERSION}; pyenv global ${PYTHON_VERSION} + +RUN python -m pip install virtualenv; python -m virtualenv .venv +RUN /usr/bin/env bash -c 'source .venv/bin/activate && pip install -r ./requirements.txt' +# RUN eval "$(pyenv init - bash)"; pyenv install 2.7; pyenv shell 2.7; python -m pip install virtualenv; python -m virtualenv .venv; source .venv/bin/activate; pip install -r requirements.txt + +# FROM debian:trixie +# +# WORKDIR /app +# +# COPY --from=build /app/.venv /app/.venv + +WORKDIR /app/.venv/lib/python2.7/site-packages +RUN /usr/bin/env bash -c 'apt-get install -y wget && wget https://community-static.aldebaran.com/resources/2.5.10/Python%20SDK/pynaoqi-python2.7-2.5.7.1-linux64.tar.gz && tar xvfz ./pynaoqi-python2.7-2.5.7.1-linux64.tar.gz && rm pynaoqi-python2.7-2.5.7.1-linux64.tar.gz' +RUN echo /app/.venv/lib/python2.7/site-packages/pynaoqi-python2.7-2.5.7.1-linux64/lib/python2.7/site-packages/ > pynaoqi-python2.7.pth +WORKDIR /app COPY . . ENV PYTHONPATH=src -CMD [ "python2", "-m", "robot_interface.main" ] +CMD [ "/bin/bash", "-c", "source .venv/bin/activate && python -m robot_interface.main --qi-url tcp://172.17.0.1:43305" ]