Python 3.x-Umgebungskonstruktion von Pyenv (CentOS, Ubuntu)

Einführung

Da ich mich entschied, eine Anwendung mit Python zu erstellen, dachte ich, dass die Python 2.x-Serie, die standardmäßig im Betriebssystem enthalten ist, in Ordnung wäre, aber Welche von Python 2 oder Python 3 sollte ich für die Entwicklung verwenden? besagt, dass Python3.x bereits stabil ist, sodass Sie Python3.x systemweit mit pyenv verwenden können. Ich habe versucht, eine Umgebung aufzubauen.

Zuerst dachte ich, es wäre in Ordnung, nur pyenv zu verwalten, aber die Installation jedes Pythons nimmt viel Zeit in Anspruch und es scheint nicht möglich zu sein, die Umgebung einfach zu löschen und neu zu erstellen. Deshalb habe ich auch virtualenv eingeführt.

Umgebung

Schritt 1: Installieren Sie die erforderlichen Pakete

Installation von Paketen erforderlich beim Kompilieren von Python.

CentOS


$ sudo yum install gcc bzip2 bzip2-devel openssl openssl-devel readline readline-devel

Ubuntu


$ sudo apt-get install git gcc make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev

Schritt 2: Installieren Sie Pyenv

Hol es dir von Github.

$ cd /usr/local/
$ sudo git clone git://github.com/yyuu/pyenv.git ./pyenv
$ sudo mkdir -p ./pyenv/versions ./pyenv/shims

Schritt 3: Installieren Sie Pyenv-virtualenv

Ich möchte für jede Version mit virtualenv eine separate Umgebung vorbereiten. Installieren Sie daher das Plugin pyenv-virtualenv.

$ cd /usr/local/pyenv/plugins/
$ sudo git clone git://github.com/yyuu/pyenv-virtualenv.git

Schritt 4: Pfadeinstellung

Erstellen Sie / etc / profile.d / pyenv.sh.

$ echo 'export PYENV_ROOT="/usr/local/pyenv"' | sudo tee -a /etc/profile.d/pyenv.sh
$ echo 'export PATH="${PYENV_ROOT}/shims:${PYENV_ROOT}/bin:${PATH}"' | sudo tee -a /etc/profile.d/pyenv.sh
$ source /etc/profile.d/pyenv.sh #Einstellungen widerspiegeln
$ pyenv --version
pyenv 20141211-6-g995da2d
$

Da ich PATH und PYENV_ROOT zum Zeitpunkt von sudo erben möchte, bearbeiten Sie wie folgt mit visudo wie So erben Sie PATH bei sudo.

#Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin
Defaults    env_keep += "PATH"
Defaults    env_keep += "PYENV_ROOT"

Schritt 5: Verwendung von Pyenv

Soweit ich die Hilfe sehen kann, scheinen die Befehle, die mit rbenv verwendet werden können, dieselben zu sein.

$ pyenv --help
pyenv 20141211-6-g995da2d
Usage: pyenv <command> [<args>]

Some useful pyenv commands are:
   commands    List all available pyenv commands
   local       Set or show the local application-specific Python version
   global      Set or show the global Python version
   shell       Set or show the shell-specific Python version
   install     Install a Python version using python-build
   uninstall   Uninstall a specific Python version
   rehash      Rehash pyenv shims (run this after installing executables)
   version     Show the current Python version and its origin
   versions    List all Python versions available to pyenv
   which       Display the full path to an executable
   whence      List all Python versions that contain the given executable

See `pyenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/yyuu/pyenv#readme
$

Schritt 6: Python-Installation

Überprüfen Sie die Version, die installiert werden kann.

$ pyenv install --list

Installiert die neueste Version 3.4.2 am 28. Dezember 2014.

$ sudo pyenv install -v 3.4.2
$ pyenv versions
* system (set by /usr/local/pyenv/version)
  3.4.2
$

Die Standard-Python-Version für jeden Benutzer wurde in 3.4.2 geändert.

$ sudo pyenv global 3.4.2
$ pyenv versions
  system
* 3.4.2 (set by /usr/local/pyenv/version)
$ python --version
Python 3.4.2
$

Schritt 7: Erstellen Sie virtualenv

Mit dem folgenden Befehl können Sie eine Umgebung mit der vorhandenen Python-Version erstellen. Mit pip usw. installierte Pakete unterscheiden sich je nach Umgebung, sodass Sie Pakete problemlos installieren können.

$ sudo pyenv virtualenv 3.4.2 dev01-3.4.2
$ pyenv versions
  system
* 3.4.2 (set by /usr/local/pyenv/version)
  dev01-3.4.2
$ sudo pyenv local dev01-3.4.2 #Aktuelle Umgebung dev01-3.4.Wechseln Sie zu 2
$ pyenv versions
  system
  3.4.2
* dev01-3.4.2 (set by /usr/local/pyenv/plugins/.python-version)
$

Versuchen Sie, Gunicorn mit Pip zu installieren.

$ sudo pip install gunicorn
$ pip list
gunicorn (19.1.1)
pip (1.5.6)
setuptools (2.1)
$ sudo pyenv local 3.4.2 
$ pip list # 3.4.2 Gunicorn ist nicht in der Umgebung installiert.
pip (1.5.6)
setuptools (2.1)
$

Sie können dev01-3.4.2 mit dem folgenden Befehl löschen.

$ sudo pyenv uninstall dev01-3.4.2
pyenv: remove /usr/local/pyenv/versions/dev01-3.4.2? y
$ pyenv versions
  system
* 3.4.2 (set by /usr/local/pyenv/plugins/.python-version)
$

abschließend

Wenn Sie pyenv verwenden, können Sie die python3.x-Serie problemlos installieren, ohne sich um die Python-Umgebung zu Beginn des Systems kümmern zu müssen, und es scheint, dass Sie die Betriebsüberprüfung der python2.x-Serie und der python3.x-Serie problemlos auf einem Betriebssystem erstellen können.

Es gibt auch einen Wrapper für rbenv und pyenv namens anyenv, der bequemer zu sein scheint, wenn Sie env-Tools in mehreren Sprachen verwenden. Bereiten Sie die Entwicklungsumgebung mit anyenv vor

Das ist es.

Recommended Posts

Python 3.x-Umgebungskonstruktion von Pyenv (CentOS, Ubuntu)
[Ubuntu 18.04] Erstellen Sie eine Python-Umgebung mit pyenv + pipenv
Python-Umgebungskonstruktion (Pyenv, Anaconda, Tensorflow)
Python-Umgebungskonstruktion (Pyenv + Poesie + Pipx)
Python3-Umgebungskonstruktion mit pyenv-virtualenv (CentOS 7.3)
OpenCV3 & Python3 Umgebungskonstruktion unter Ubuntu
Umgebungskonstruktion (Python)
Python-Umgebungskonstruktion
Python - Umgebungskonstruktion
[Pyenv] Erstellen einer Python-Umgebung mit Ubuntu 16.04
Verfahren zur Erstellung der Umgebung: Ubuntu + Apache2 + Python + Pyramid
Aufbau der Python3 TensorFlow-Umgebung (Mac und pyenv virtualenv)
Erstellen Sie eine Python-Umgebung mit pyenv auf EC2 (Ubuntu)
Homebrew Python Umgebung Konstruktion
Bau von Pyenv + Fischumwelt
Python-Umgebungskonstruktion @ Win7
[Python] Django-Umgebungskonstruktion (pyenv + pyenv-virtualenv + Anaconda) für macOS
Berichtsumgebungskonstruktion durch Python (Matplotlib, Pandas, Sphinx) + wkhtmltopdf
[Ubuntu 18.04] Aufbau einer Tensorflow 2.0.0-GPU-Umgebung
Python + Anaconda + Pycharm-Umgebungskonstruktion
Informationen zum Aufbau einer Linux-Umgebung (CentOS)
Python (pyenv + pyenv-virtualenv) + CentOS7-Installation
Anaconda-Umgebungskonstruktion auf CentOS7
Aufbau einer Python-Umgebung (Windows 10 + Emacs)
CI-Umgebungskonstruktion ~ Python Edition ~
Setzen Sie Python 3.x in Ubuntu ein
Erstellen Sie eine Python3-Umgebung mit Ubuntu 16.04
Aufbau einer Python-Umgebung für Mac
Konstruktionsverfahren für die Anaconda3-Python-Umgebung
Python3-Umgebungskonstruktion (für Anfänger)
Python-Umgebungskonstruktion und TensorFlow
Erstellen einer Python-Umgebung unter Windows 7
[MEMO] [Entwicklung der Entwicklungsumgebung] Python
Aufbau der Ubuntu14.04 + GPU + TensorFlow-Umgebung
Umgebungskonstruktion von Python2 & 3 (OSX)
So stellen Sie pyenv unter Amazon Linux und Ubuntu ein, um eine Python 3.6.0-Umgebung zu erstellen
Aufbau einer Python-Umgebung auf einem Mac (pyenv, virtualenv, anaconda, ipython notebook)
Erstellen Sie eine Python-Umgebung mit pyenv (OS X El Capitan 10.11.3).
Umgebungskonstruktion von Python und OpenCV
Python-Umgebungskonstruktionsnotiz unter Windows 10
Beginnen Sie mit Python! ~ ① Umweltbau ~
Richten Sie eine Python-Entwicklungsumgebung unter Ubuntu ein
Aufbau einer Anaconda-Python-Umgebung unter Windows 10
Konstruktionsnotiz für die Python-Umgebung auf dem Mac
[Python3] Aufbau der Entwicklungsumgebung << Windows Edition >>
Richten Sie die Python-Umgebung unter CentOS ein
Erstellen Sie eine Python-Umgebung in Centos
Erstellen einer Umgebung für Python3.8 auf einem Mac
Ab Ubuntu 20.04 Einführung in die Umgebungskonstruktion
Python3 TensorFlow für Mac-Umgebungskonstruktion
Installieren Sie Python unter CentOS mit Pyenv
Verwenden von Chainer mit CentOS7 [Umgebungskonstruktion]
Konstruktionsnotiz für die Emacs Python-Entwicklungsumgebung
Konstruktionsnotiz für die Ubuntu Desktop 20.04-Entwicklungsumgebung
pytorch @ python3.8 Umgebungskonstruktion mit pipenv