3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

venvとpyenvそしてcondaのバージョン管理の話

Last updated at Posted at 2018-09-15

とても興味深い話を聞いたのでシェアします。

開発環境構築では何が良いのか問題は付いて回ると思います。

聞いた限りでは

  • venv
  • conda
  • pyenv(むしろ非推奨)

venv

標準機能で環境の中にシンボリックリンク構造を作り、環境構築。(らしい)

ある程度のバージョンは呼び出すときに

python3.6 -m venv <任意 name>

と書けばある程度はバージョン別管理もできる。

conda

標準機能ではない分venvに劣る。
環境を封入できるという点では非常に優秀

pyenv

標準機能ではない
土台となる部分が複雑になりガチ、トラブルの原因となる
メリットはver3.6.4と細かいバージョンの管理が可能。逆を言うとそこまでやる必要のある人しか必要はない。

venv 環境の構築(複製まで)

環境構築

の前にバージョン確認する

python -V

基本はバージョン3であることを確認。
anaconda でPython環境を構築している場合は、無用なトラブルを避けるためにanaconda環境を辞めること。
事前にanaconda は削除して直にpython3をインストールする。
前段でもお伝えしたがシンプルの環境構築のため、必要な構成で環境構築する。

環境を作る作業フォルダを作り、その作業フォルダーに移動。

mkdir <任意 name> 
cd <任意 name>

venvの一つの環境を作成

python -m venv <任意 name> 

環境を起動する

source [任意 name]/bin/activate

pipで必要なパッケージをインストールする

pip install xxxxx

インストールされているパッケージを確認の仕方

pip freeze

複製方法

requirement.txtにパッケージ情報のファイルをrequirement.txt出力

pip freeze > requirement.txt

※ cat requirement.txt 内容確認できます。後ほど設定ファイルとして読み込みます。

venv pythonでバージョン管理

venvのもう一つの環境を作成

mkdir <任意 name> 
cd <任意 name>
python -m venv <任意 name> 

環境を起動する

source [任意 name]/bin/activate

一つ目で設定ファイルrequirements.txtで同一のパッケージで環境構築出来ます。

pip install --require requirements.txt

以上

作業シンプルで簡単なので今後は、このようにPythonに携わっていきたいと考えています。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?