Почему мой докер-файл предполагает Python 2.7?

Я работаю на компьютере с ubuntu 20.04.1 LTS. Моя версия питона 3.8.5

Я пытаюсь создать образ докера со следующим Dockerfile

FROM ros:kinetic-robot
LABEL maintainer="olala7846@gmail.com"

# Install Dataspeed DBW  from binary
# adding Dataspeed server to apt
RUN sh -c 'echo "deb [ arch=amd64 ] http://packages.dataspeedinc.com/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-dataspeed-public.list'
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys FF6D3CDA
RUN apt-get update

# setup rosdep
RUN sh -c 'echo "yaml http://packages.dataspeedinc.com/ros/ros-public-'$ROS_DISTRO'.yaml '$ROS_DISTRO'" > /etc/ros/rosdep/sources.list.d/30-dataspeed-public-'$ROS_DISTRO'.list'
RUN rosdep update
RUN apt-get install -y ros-$ROS_DISTRO-dbw-mkz
RUN apt-get upgrade -y
# end installing Dataspeed DBW

# install python packages
RUN apt-get install -y python-pip
RUN pip install --upgrade pip
COPY requirements.txt ./requirements.txt
RUN pip install -r requirements.txt

# install required ros dependencies
RUN apt-get install -y ros-$ROS_DISTRO-cv-bridge
RUN apt-get install -y ros-$ROS_DISTRO-pcl-ros
RUN apt-get install -y ros-$ROS_DISTRO-image-proc

# socket io
RUN apt-get install -y netbase

RUN mkdir /capstone
VOLUME ["/capstone"]
VOLUME ["/root/.ros/log/"]
WORKDIR /capstone/ros

Однако он не работает при установке требований:

attrdict==2.0.0
gevent==1.4.0
gevent-websocket==0.10.1
h5py==2.6.0
python-engineio==3.11.2
python-socketio==4.4.0
numpy==1.13.1
Pillow==2.2.1
scipy==0.19.1
keras==2.0.8
tensorflow==1.3.0
ujson==1.35
wsaccel==0.6.2

специально при попытке установить numpy.

Перед установкой требований он показывает мне это сообщение

DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2.7 in January 2021. More details about Python 2 support in pip can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support pip 21.0 will remove support for this functionality.

Почему? В какой части я указал Python 2.7???

-1
задан 15 January 2021 в 16:28

1 ответ

О, вы будете любить это: вам нужно использовать Python3-Pip и PIP3 в вашем DockerFile.

При использовании APT Установите Python-Pip Вы устанавливаете версию Pyphon 2.7 Pyphon 2.7. Надеюсь, что это то, что будет решено в ближайшее время, теперь, когда 2.x Run Python достиг EOL.

Надеюсь, это дает вам то, что вам нужно

0
ответ дан 18 March 2021 в 23:43

Другие вопросы по тегам:

Похожие вопросы: