57

I am preparing a docker image for Ubuntu 20.04 and due to TensorFlow 2.0 requirement, I need Python 3.7. TensorFlow runs on Python 3.5 to 3.7. Running apt install python3 installs Python 3.8 by default and that breaks my TensorFlow installation.

Is there any way I can get an apt package for Python 3.7 for Ubuntu 20.04? Since it is going to be inside docker image, I don't want to get into the business of downloading Python 3.7 source code and compiling. Putting those commands in Dockerfile will be overwhelming for me. Is there any simpler way of getting Python 3.7 for Ubuntu 20.04?

Running

sudo apt-cache madison python3

returns

python3 | 3.8.2-0ubuntu2 | http://in.archive.ubuntu.com/ubuntu focal/main amd64 Packages
Javad Bahoosh
  • 400
  • 1
  • 3
  • 16
Kunal Shah
  • 1,011
  • 1
  • 8
  • 13
  • hye, if you look into `dockerhub` , you can find the official images of `tensorflow`, you can find tensorflow in any version running on almost any python version too! – L F Jan 29 '22 at 20:47

2 Answers2

116

Do you need Ubuntu 20.04? Ubuntu 18.04 comes with Python 3.6, and 3.7 available.

If you do, the deadsnakes PPA has Python 3.5-3.7 for Ubuntu 20.04 (Focal). To add it and install:

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get install python3.7

P.s. I'm not a dev and have no experience with Tensorflow so take this with a grain of salt.

(Sidenote: add-apt-repository runs apt-get update automatically, but that's not documented in man add-apt-repository, only add-apt-repository --help. This was fixed in a later release.)

wjandrea
  • 28,235
  • 9
  • 60
  • 81
  • 1
    I am not sure if I will be adding PPA. But thanks though. It looks like temporary fix. I was expecting more of a permanent fix. – Kunal Shah Apr 25 '20 at 18:43
  • 2
    @Kunal I don't think Python 3.7 or below will ever be officially packaged for Ubuntu 20.04. Seems like the Ubuntu devs never package older minor versions. – wjandrea Apr 25 '20 at 18:47
  • 1
    so in that case, I will have to wait till tensorflow certifies python3.8 to be used on 20.04. Till then, it is TF 2.x on 18.04 – Kunal Shah Apr 25 '20 at 18:56
9

Tensorflow 2.2 now supports python 3.8 so problem is solved now.

Kunal Shah
  • 1,011
  • 1
  • 8
  • 13