build: add qi lib to Docker
Uses Pyenv to build Python 2 from source, while keeping Debian for needed packages. Might move to two build stages in the future. ref: N25B-284
This commit is contained in:
33
Dockerfile
33
Dockerfile
@@ -1,12 +1,37 @@
|
|||||||
FROM python:2.7.18-alpine
|
FROM debian:trixie AS build
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
COPY install_deps.sh requirements.txt ./
|
COPY requirements.txt .
|
||||||
RUN ./install_deps.sh
|
|
||||||
|
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 . .
|
COPY . .
|
||||||
|
|
||||||
ENV PYTHONPATH=src
|
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" ]
|
||||||
|
|||||||
Reference in New Issue
Block a user