Pythonの利用環境として、Anacondaを利用してみました。ライブラリをインストールする際に、普通にpipでインストールするとエラーとなって、トラブルが解消できない( こちら側のスキル的な問題!?と思うのですが・・・)場合も、Anacondaだとうまくいったりするときがあります。ということで Anaconda をインストールしてみました。その時の手順のメモです。
Anacondaのインストール
Linux版Anacondaのインストール に従ってインストールします。
以下、「anaconda」ユーザーが、ホームディレクトリにインストールすると想定します。
->ユーザー(例):anaconda
->パスワード(例):Password-OS-anaconda とする。
Linux版Anaconda のインストーラを https://www.anaconda.com/download/ からダウンロードします。このサイトのLinuxインストーラ「64-Bit (x86) Installer (544 MB)」の上で、マウスを右クリックして「リンクのアドレスをコピー」すれば、取得するインストーラーのURLを知ることができます。ここでは、以下のURLでした。
https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
wget で取得します。
[anaconda@^ ~]$ wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
--2021-09-06 11:50:51-- https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh
repo.anaconda.com (repo.anaconda.com) をDNSに問いあわせています... 104.16.130.3, 104.16.131.3, 2606:4700::6810:8203, ...
repo.anaconda.com (repo.anaconda.com)|104.16.130.3|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 570853747 (544M) [application/x-sh]
`Anaconda3-2021.05-Linux-x86_64.sh' に保存中
Anaconda3-2021.05-L 100%[===================>] 544.41M 11.5MB/s 時間 49s
2021-09-06 11:51:40 (11.2 MB/s) - `Anaconda3-2021.05-Linux-x86_64.sh' へ保存完了 [570853747/570853747]
ダウンロードしたインストーラを実行します。
[anaconda@^ ~]$ bash Anaconda3-2021.05-Linux-x86_64.sh
Welcome to Anaconda3 2021.05
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>> (ENTER)
===================================
End User License Agreement - Anaconda Individual Edition
===================================
Copyright 2015-2021, Anaconda, Inc.
・・・・・
・・・・・
Last updated April 5, 2021
Do you accept the license terms? [yes|no]
[no] >>> yes
Anaconda3 will now be installed into this location:
/home/anaconda/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/home/anaconda/anaconda3] >>> (ENTER) ※インストールする場所を変更するときはここで入力
PREFIX=/home/anaconda/anaconda3
Unpacking payload ...
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /home/anaconda/anaconda3
・・・・・
・・・・・
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>> yes
・・・・・
・・・・・
==> For changes to take effect, close and re-open your current shell. <==
If you'd prefer that conda's base environment not be activated on startup,
set the auto_activate_base parameter to false:
conda config --set auto_activate_base false
Thank you for installing Anaconda3!
===========================================================================
・・・・・
・・・・・
※デフォルトではユーザーのホームディレクトリにインストールされます。特定のディレクトリにインストールしたい場合は、途中で設定します。
一旦ターミナルを終了し、再度起動すると、自動的にconda のbase環境が有効になって立ち上がります。
(base) [anaconda@^ ~]$
python の所在とバージョンを確認してみます。
(base) [anaconda@^ ~]$ which python
~/anaconda3/bin/python
(base) [anaconda@^ ~]$ python --version
Python 3.8.8
ターミナル起動時に自動的にConda のbase環境が有効にはならないように設定した後、base環境を終了します。
(base) [anaconda@^ ~]$ conda config --set auto_activate_base false
(base) [anaconda@^ ~]$ conda deactivate
[anaconda@^ ~]$
インストールが完了しました。condaを最新のものにしておきます。
[anaconda@^ ~]$ conda update conda
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /home/anaconda/anaconda3
added / updated specs:
- conda
The following packages will be downloaded:
package | build
---------------------------|-----------------
conda-4.10.3 | py38h06a4308_0 2.9 MB
xmltodict-0.12.0 | pyhd3eb1b0_0 13 KB
------------------------------------------------------------
Total: 2.9 MB
The following packages will be UPDATED:
conda 4.10.1-py38h06a4308_1 --> 4.10.3-py38h06a4308_0
The following packages will be DOWNGRADED:
xmltodict 0.12.0-py_0 --> 0.12.0-pyhd3eb1b0_0
Proceed ([y]/n)? y
Downloading and Extracting Packages
conda-4.10.3 | 2.9 MB | ##################################### | 100%
xmltodict-0.12.0 | 13 KB | ##################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
Anaconda仮想環境の作成
現在の環境を確認します。base環境のみです。
[anaconda@^ ~]$ conda info -e
# conda environments:
#
base * /home/anaconda/anaconda3
base環境を起動し、終了してみます。
[anaconda@^ ~]$ conda activate
(base) [anaconda@^ ~]$ conda deactivate
[anaconda@^ ~]$
仮想環境 env1 を作成します。
-> 作成する仮想環境のpythonのバージョン(例):python3.9 とします。
[anaconda@^ ~]$ conda create -n env1 python=3.9
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /home/anaconda/anaconda3/envs/env1
added / updated specs:
- python=3.9
The following packages will be downloaded:
package | build
---------------------------|-----------------
_openmp_mutex-4.5 | 1_gnu 22 KB
ca-certificates-2021.7.5 | h06a4308_1 113 KB
certifi-2021.5.30 | py39h06a4308_0 139 KB
ld_impl_linux-64-2.35.1 | h7274673_9 586 KB
libgcc-ng-9.3.0 | h5101ec6_17 4.8 MB
libgomp-9.3.0 | h5101ec6_17 311 KB
libstdcxx-ng-9.3.0 | hd4cf53a_17 3.1 MB
openssl-1.1.1l | h7f8727e_0 2.5 MB
pip-21.2.4 | py37h06a4308_0 1.8 MB
python-3.9.6 | h12debd9_1 18.4 MB
setuptools-52.0.0 | py39h06a4308_0 724 KB
sqlite-3.36.0 | hc218d9a_0 990 KB
tzdata-2021a | h5d7bf9c_0 111 KB
wheel-0.37.0 | pyhd3eb1b0_1 33 KB
------------------------------------------------------------
Total: 33.6 MB
The following NEW packages will be INSTALLED:
_libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main
_openmp_mutex pkgs/main/linux-64::_openmp_mutex-4.5-1_gnu
ca-certificates pkgs/main/linux-64::ca-certificates-2021.7.5-h06a4308_1
certifi pkgs/main/linux-64::certifi-2021.5.30-py39h06a4308_0
ld_impl_linux-64 pkgs/main/linux-64::ld_impl_linux-64-2.35.1-h7274673_9
libffi pkgs/main/linux-64::libffi-3.3-he6710b0_2
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.3.0-h5101ec6_17
libgomp pkgs/main/linux-64::libgomp-9.3.0-h5101ec6_17
libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-9.3.0-hd4cf53a_17
ncurses pkgs/main/linux-64::ncurses-6.2-he6710b0_1
openssl pkgs/main/linux-64::openssl-1.1.1l-h7f8727e_0
pip pkgs/main/linux-64::pip-21.2.4-py37h06a4308_0
python pkgs/main/linux-64::python-3.9.6-h12debd9_1
readline pkgs/main/linux-64::readline-8.1-h27cfd23_0
setuptools pkgs/main/linux-64::setuptools-52.0.0-py39h06a4308_0
sqlite pkgs/main/linux-64::sqlite-3.36.0-hc218d9a_0
tk pkgs/main/linux-64::tk-8.6.10-hbc83047_0
tzdata pkgs/main/noarch::tzdata-2021a-h5d7bf9c_0
wheel pkgs/main/noarch::wheel-0.37.0-pyhd3eb1b0_1
xz pkgs/main/linux-64::xz-5.2.5-h7b6447c_0
zlib pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3
Proceed ([y]/n)? y
Downloading and Extracting Packages
sqlite-3.36.0 | 990 KB | ##################################### | 100%
setuptools-52.0.0 | 724 KB | ##################################### | 100%
openssl-1.1.1l | 2.5 MB | ##################################### | 100%
certifi-2021.5.30 | 139 KB | ##################################### | 100%
libgcc-ng-9.3.0 | 4.8 MB | ##################################### | 100%
wheel-0.37.0 | 33 KB | ##################################### | 100%
tzdata-2021a | 111 KB | ##################################### | 100%
libstdcxx-ng-9.3.0 | 3.1 MB | ##################################### | 100%
ca-certificates-2021 | 113 KB | ##################################### | 100%
libgomp-9.3.0 | 311 KB | ##################################### | 100%
ld_impl_linux-64-2.3 | 586 KB | ##################################### | 100%
_openmp_mutex-4.5 | 22 KB | ##################################### | 100%
python-3.9.6 | 18.4 MB | ##################################### | 100%
pip-21.2.4 | 1.8 MB | ##################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate env1
#
# To deactivate an active environment, use
#
# $ conda deactivate
[anaconda@^ ~]$
仮想環境 env1 を起動し、python のバージョン等を確認します。
# 仮想環境の確認
[anaconda@^ ~]$ conda info -e
# conda environments:
#
base * /home/anaconda/anaconda3
env1 /home/anaconda/anaconda3/envs/env1
# 仮想環境 env1 の起動
[anaconda@^ ~]$ conda activate env1
# pythonバージョン確認
(env1) [anaconda@^ ~]$ python --version
Python 3.9.6
# python所在確認
(env1) [anaconda@^ ~]$ which python
~/anaconda3/envs/env1/bin/python
# 仮想環境内のパッケージを確認
(env1) [anaconda@^ ~]$ conda list
# packages in environment at /home/anaconda/anaconda3/envs/env1:
#
# Name Version Build Channel
_libgcc_mutex 0.1 main
_openmp_mutex 4.5 1_gnu
ca-certificates 2021.7.5 h06a4308_1
certifi 2021.5.30 py39h06a4308_0
ld_impl_linux-64 2.35.1 h7274673_9
libffi 3.3 he6710b0_2
libgcc-ng 9.3.0 h5101ec6_17
libgomp 9.3.0 h5101ec6_17
libstdcxx-ng 9.3.0 hd4cf53a_17
ncurses 6.2 he6710b0_1
openssl 1.1.1l h7f8727e_0
pip 21.2.4 py37h06a4308_0
python 3.9.6 h12debd9_1
readline 8.1 h27cfd23_0
setuptools 52.0.0 py39h06a4308_0
sqlite 3.36.0 hc218d9a_0
tk 8.6.10 hbc83047_0
tzdata 2021a h5d7bf9c_0
wheel 0.37.0 pyhd3eb1b0_1
xz 5.2.5 h7b6447c_0
zlib 1.2.11 h7b6447c_3
(env1) [anaconda@^ ~]$
jupyter lab の設定と起動
anaconda の base環境には、jupyter lab が既にインストール済みです。設定ファイルを作成して、パスワードの登録、内容の修正等を行えば、jupyter lab を起動することができます。修正内容は前回と同じです。
-> jupyter lab のパスワード(例):Password-Jlab-anaconda とします。
# base環境へ切替
(env1) [anaconda@^ ~]$ conda activate
# jupyterの存在確認(バージョン確認)
(base) [anaconda@^ ~]$ jupyter --version
jupyter core : 4.7.1
jupyter-notebook : 6.3.0
qtconsole : 5.0.3
ipython : 7.22.0
ipykernel : 5.3.4
jupyter client : 6.1.12
jupyter lab : 3.0.14
nbconvert : 6.0.7
ipywidgets : 7.6.3
nbformat : 5.1.3
traitlets : 5.0.5
# 設定ファイルの作成
(base) [anaconda@^ ~]$ jupyter lab --generate-config
Writing default config to: /home/anaconda/.jupyter/jupyter_lab_config.py
# ハッシュ化したパスワードを生成
(base) [anaconda@^ ~]$ jupyter lab password
Enter password: Password-Jlab-anaconda
Verify password: Password-Jlab-anaconda
[JupyterPasswordApp] Wrote hashed password to /home/anaconda/.jupyter/jupyter_server_config.json
# パスワードを確認(コピーしておく)
(base) [anaconda@^ ~]$ vi /home/anaconda/.jupyter/jupyter_server_config.json
---------------------------------------------------------------------
{
"ServerApp": {
"password": "sha1:cbda2b2e3481:03e9a46b01f28d21eaf1e38f47ec7107..."
}
}
---------------------------------------------------------------------
# 設定ファイルの書き換え
(base) [anaconda@^ ~]$ vi .jupyter/jupyter_lab_config.py
--------------------------------------------------
c.ServerApp.ip = 'localhost' # コメントアウトを外す
c.ServerApp.open_browser = False # 同
c.ServerApp.port = 9999 # c.ServerApp.port = 0
c.ServerApp.token = '' # c.ServerApp.token = '<generated>'
c.ServerApp.password = 'sha1:cbda2b2e3481:03e9a46b01f28d21eaf1e38f47ec7107...'
--------------------------------------------------
設定は完了しました。
予め jupyter lab の作業場所(workspace)を作成しておきます。
(base) [anaconda@^ ~]$ mkdir workspace
Windows PowerShell から jupyter を起動します。
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
新しいクロスプラットフォームの PowerShell をお試しください https://aka.ms/pscore6
# ssh接続し、パスワードを入力
PS C:\Users\user> ssh -p 50000 -L 9999:localhost:9999 anaconda@example.net
anaconda@example.net's password: Password-OS-anaconda
SAKURA internet [Virtual Private Server SERVICE]
Last login: Sat Sep 11 18:36:28 2021 from 198.51.100.1
# workspaceディレクトリへ移動
[anaconda@^ ~]$ cd workspace
# base環境有効化
[anaconda@^ workspace]$ conda activate
# jupyter lab 起動
(base) [anaconda@^ workspace]$ jupyter lab
[I 2021-09-11 21:27:08.440 ServerApp] jupyterlab | extension was successfully linked.
[I 2021-09-11 21:27:08.451 ServerApp] ノートブックサーバは cookie secret を /home/anaconda/.local/share/jupyter/runtime/jupyter_cookie_secret に書き込みます
[I 2021-09-11 21:27:08.765 ServerApp] nbclassic | extension was successfully linked.
[I 2021-09-11 21:27:08.832 LabApp] JupyterLab extension loaded from /home/anaconda/anaconda3/lib/python3.8/site-packages/jupyterlab
[I 2021-09-11 21:27:08.833 LabApp] JupyterLab application directory is /home/anaconda/anaconda3/share/jupyter/lab
[I 2021-09-11 21:27:08.836 ServerApp] jupyterlab | extension was successfully loaded.
[I 2021-09-11 21:27:08.842 ServerApp] nbclassic | extension was successfully loaded.
[I 2021-09-11 21:27:08.842 ServerApp] ローカルディレクトリからノートブックをサーブ: /home/anaconda/workspace
[I 2021-09-11 21:27:08.842 ServerApp] Jupyter Server 1.4.1 is running at:
[I 2021-09-11 21:27:08.842 ServerApp] http://localhost:9999/lab
[I 2021-09-11 21:27:08.842 ServerApp] or http://127.0.0.1:9999/lab
[I 2021-09-11 21:27:08.842 ServerApp] サーバを停止し全てのカーネルをシャットダウンするには Control-C を使って下さい(確認をスキップするには2回)。
[W 2021-09-11 21:27:08.845 ServerApp] ウェブブラウザが見つかりません: could not locate runnable browser
PCのブラウザから、http://localhost:9999/lab へアクセスします。

パスワード(ここでは、Password-Jlab-anaconda)を入力して、ログインします。

[1] : import sys
sys.version
[1] : '3.8.8 (default, Apr 13 2021, 19:58:26) \n[GCC 7.3.0]'
[2] : sys.executable
[2] : '/home/anaconda/anaconda3/bin/python'
python3.8 が起動していることが確認できました。
Kernelの追加
仮想環境 env1 をカーネルに追加してみます。仮想環境 env1 を有効にし、jupyter lab をインストールした後、カーネルに追加します。以上の手続きは(その2)と同じです。
# 仮想環境 env1 の起動
(base) [anaconda@^ ~]$ conda activate env1
# jupyter lab インストール
(env1) [anaconda@^ ~]$ conda install jupyterlab
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /home/anaconda/anaconda3/envs/env1
added / updated specs:
- jupyterlab
The following packages will be downloaded:
・・・・・
・・・・・
Proceed ([y]/n)? y
・・・・・
・・・・・
# 仮想環境 env1 をカーネルに追加
(env1) [anaconda@^ ~]$ ipython kernel install --user --name=env1 --display-name=python39-env1
Installed kernelspec env1 in /home/anaconda/.local/share/jupyter/kernels/env1
# 利用できるカーネルを確認
(env1) [anaconda@^ ~]$ jupyter kernelspec list
Available kernels:
env1 /home/anaconda/.local/share/jupyter/kernels/env1
python3 /home/anaconda/anaconda3/envs/env1/share/jupyter/kernels/python3
再びローカルPC から env1 環境で jupyter lab を起動し、ブラウザで確認してみます。
メニュー kernel タグの「Change Kernel…」項を選択すると、Kernel が追加されていることがわかります。’Python3′ は jupyter を立ち上げた環境(ここではenv1)となるので、ここではどちらを選んでも env1環境(python3.9)となります。
