How do I install Python 3.7 in google cloud shell

前端 未结 4 1121
栀梦
栀梦 2020-12-08 01:27

I have python 3.5 on my google cloud shell and want 3.7 so I can do command line debugging of code I am going to deploy via google cloud functions (and use 3.7 features such

相关标签:
4条回答
  • 2020-12-08 01:43

    This worked for me on the GCP shell.

    # Install requirements
    sudo apt-get install -y build-essential checkinstall libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev zlib1g-dev openssl libffi-dev python3-dev python3-setuptools wget 
    
    # Prepare to build
    mkdir /tmp/Python37
    cd /tmp/Python37
    
    # Pull down Python 3.7, build, and install
    wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
    tar xvf Python-3.7.0.tar.xz
    cd /tmp/Python37/Python-3.7.0
    ./configure
    sudo make altinstall
    

    Then you would just call Python like so:

    python3.7 ./yourScript.py

    Src: https://serverfault.com/questions/918335/best-way-to-run-python-3-7-on-ubuntu-16-04-which-comes-with-python-3-5

    0 讨论(0)
  • 2020-12-08 01:54

    Another simple approach is

    sudo ``which conda`` install python=3.7 -y

    Obviously, I mean single backticks around which conda, but I can't remember how to escape backticks in github markdown.

    Slash escape is \supposed` to work, but doesn't`

    In <pre> tag:

    `Slash escape is \`supposed\` to work, but doesn't`
    0 讨论(0)
  • 2020-12-08 02:05
    
    # install pyenv to install python on persistent home directory
    curl https://pyenv.run | bash
    
    # add to path
    echo 'export PATH="$HOME/.pyenv/bin:$PATH"' >> ~/.bashrc
    echo 'eval "$(pyenv init -)"' >> ~/.bashrc
    echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
    
    # updating bashrc
    source ~/.bashrc
    
    # install python 3.7.4 and make default
    pyenv install 3.7.4
    pyenv global 3.7.4
    
    # execute
    python
    

    This is based on @yungchin answer.

    0 讨论(0)
  • 2020-12-08 02:07

    Even if the packages were available through apt, the downside of using apt would be that you'd have to install all over again whenever you'd been disconnected from Cloud Shell: it always discards your runtime container.

    I'd recommend using https://github.com/pyenv/pyenv for convenience. If you follow the installation guide (and note the bash profile additions should go into .bashrc in our case) you end up with a python build in your home directory, which is persisted across Cloud Shell sessions. This involves just a few steps:

    1. clone the repo into ~/.pyenv
    2. append three lines (see the README) to .bashrc to adjust your $PATH
    3. pyenv install 3.7.3 # this takes a while to build
    4. pyenv global 3.7.3 # sets this version as the default
    0 讨论(0)
提交回复
热议问题