Anaconda をベースにPython動作環境を整備

August 30, 2019 – 5:09 pm

この数カ月間、汎用プログラム言語Pythonについて学んでいる。かなり興味深いプログラム言語との印象を受けている。

これまで、Anaconda3, Jupyter Notebook を自宅に設置しているLinuxサーバ上にインストールし、そのうえでPythonの動作環境を整えようと作業を続けてきた。Webに公開されている情報をたよりに試行錯誤的に作業を続けてきたが、最近になって、かなり安定した動作を得られるようになった。

ここらで、一連のインストール作業をメモとして残しておくことにした。

なお、本ブログ上に既報の関連記事は以下:


Anaconda 仮想環境 trial_env の作成

(base) [tsflow@localhost ~]$ conda create -n trial_env python=3.7
Solving environment: done

## Package Plan ##

  environment location: /home/tsflow/anaconda3/envs/trial_env

  added / updated specs:
    - python=3.7


The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main
  ca-certificates    pkgs/main/linux-64::ca-certificates-2019.5.15-1
  certifi            pkgs/main/linux-64::certifi-2019.6.16-py37_1
  libedit            pkgs/main/linux-64::libedit-3.1.20181209-hc058e9b_0
  libffi             pkgs/main/linux-64::libffi-3.2.1-hd88cf55_4
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-9.1.0-hdf63c60_0
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-9.1.0-hdf63c60_0
  ncurses            pkgs/main/linux-64::ncurses-6.1-he6710b0_1
  openssl            pkgs/main/linux-64::openssl-1.1.1c-h7b6447c_1
  pip                pkgs/main/linux-64::pip-19.2.2-py37_0
  python             pkgs/main/linux-64::python-3.7.4-h265db76_1
  readline           pkgs/main/linux-64::readline-7.0-h7b6447c_5
  setuptools         pkgs/main/linux-64::setuptools-41.0.1-py37_0
  sqlite             pkgs/main/linux-64::sqlite-3.29.0-h7b6447c_0
  tk                 pkgs/main/linux-64::tk-8.6.8-hbc83047_0
  wheel              pkgs/main/linux-64::wheel-0.33.4-py37_0
  xz                 pkgs/main/linux-64::xz-5.2.4-h14c3975_4
  zlib               pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3


Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate trial_env
#
# To deactivate an active environment, use
#
#     $ conda deactivate

 
作成済み仮想環境の確認:

(base) [tsflow@localhost ~]$ conda info -e
# conda environments:
#
base                  *  /home/tsflow/anaconda3
tensorflow_env           /home/tsflow/anaconda3/envs/tensorflow_env
trial_env                /home/tsflow/anaconda3/envs/trial_env

仮想環境 trial_env の activate:

(base) [tsflow@localhost ~]$ conda activate trial_env
(trial_env) [tsflow@localhost ~]$

jupyter 関連パッケージのインストール

(trial_env) [tsflow@localhost ~]$ conda install jupyter
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tsflow/anaconda3/envs/trial_env

  added / updated specs:
    - jupyter


The following NEW packages will be INSTALLED:

  attrs              pkgs/main/linux-64::attrs-19.1.0-py37_1
  backcall           pkgs/main/linux-64::backcall-0.1.0-py37_0
  bleach             pkgs/main/linux-64::bleach-3.1.0-py37_0
  dbus               pkgs/main/linux-64::dbus-1.13.6-h746ee38_0
  decorator          pkgs/main/linux-64::decorator-4.4.0-py37_1
  defusedxml         pkgs/main/noarch::defusedxml-0.6.0-py_0
  entrypoints        pkgs/main/linux-64::entrypoints-0.3-py37_0
  expat              pkgs/main/linux-64::expat-2.2.6-he6710b0_0
  fontconfig         pkgs/main/linux-64::fontconfig-2.13.0-h9420a91_0
  freetype           pkgs/main/linux-64::freetype-2.9.1-h8a8886c_1
  glib               pkgs/main/linux-64::glib-2.56.2-hd408876_0
  gmp                pkgs/main/linux-64::gmp-6.1.2-h6c8ec71_1
  gst-plugins-base   pkgs/main/linux-64::gst-plugins-base-1.14.0-hbbd80ab_1
  gstreamer          pkgs/main/linux-64::gstreamer-1.14.0-hb453b48_1
  icu                pkgs/main/linux-64::icu-58.2-h9c2bf20_1
  ipykernel          pkgs/main/linux-64::ipykernel-5.1.2-py37h39e3cac_0
  ipython            pkgs/main/linux-64::ipython-7.7.0-py37h39e3cac_0
  ipython_genutils   pkgs/main/linux-64::ipython_genutils-0.2.0-py37_0
  ipywidgets         pkgs/main/noarch::ipywidgets-7.5.1-py_0
  jedi               pkgs/main/linux-64::jedi-0.15.1-py37_0
  jinja2             pkgs/main/linux-64::jinja2-2.10.1-py37_0
  jpeg               pkgs/main/linux-64::jpeg-9b-h024ee3a_2
  jsonschema         pkgs/main/linux-64::jsonschema-3.0.2-py37_0
  jupyter            pkgs/main/linux-64::jupyter-1.0.0-py37_7
  jupyter_client     pkgs/main/noarch::jupyter_client-5.3.1-py_0
  jupyter_console    pkgs/main/linux-64::jupyter_console-6.0.0-py37_0
  jupyter_core       pkgs/main/noarch::jupyter_core-4.5.0-py_0
  libpng             pkgs/main/linux-64::libpng-1.6.37-hbc83047_0
  libsodium          pkgs/main/linux-64::libsodium-1.0.16-h1bed415_0
  libuuid            pkgs/main/linux-64::libuuid-1.0.3-h1bed415_2
  libxcb             pkgs/main/linux-64::libxcb-1.13-h1bed415_1
  libxml2            pkgs/main/linux-64::libxml2-2.9.9-hea5a465_1
  markupsafe         pkgs/main/linux-64::markupsafe-1.1.1-py37h7b6447c_0
  mistune            pkgs/main/linux-64::mistune-0.8.4-py37h7b6447c_0
  nbconvert          pkgs/main/noarch::nbconvert-5.5.0-py_0
  nbformat           pkgs/main/linux-64::nbformat-4.4.0-py37_0
  notebook           pkgs/main/linux-64::notebook-6.0.0-py37_0
  pandoc             pkgs/main/linux-64::pandoc-2.2.3.2-0
  pandocfilters      pkgs/main/linux-64::pandocfilters-1.4.2-py37_1
  parso              pkgs/main/noarch::parso-0.5.1-py_0
  pcre               pkgs/main/linux-64::pcre-8.43-he6710b0_0
  pexpect            pkgs/main/linux-64::pexpect-4.7.0-py37_0
  pickleshare        pkgs/main/linux-64::pickleshare-0.7.5-py37_0
  prometheus_client  pkgs/main/noarch::prometheus_client-0.7.1-py_0
  prompt_toolkit     pkgs/main/linux-64::prompt_toolkit-2.0.9-py37_0
  ptyprocess         pkgs/main/linux-64::ptyprocess-0.6.0-py37_0
  pygments           pkgs/main/noarch::pygments-2.4.2-py_0
  pyqt               pkgs/main/linux-64::pyqt-5.9.2-py37h05f1152_2
  pyrsistent         pkgs/main/linux-64::pyrsistent-0.14.11-py37h7b6447c_0
  python-dateutil    pkgs/main/linux-64::python-dateutil-2.8.0-py37_0
  pyzmq              pkgs/main/linux-64::pyzmq-18.1.0-py37he6710b0_0
  qt                 pkgs/main/linux-64::qt-5.9.7-h5867ecd_1
  qtconsole          pkgs/main/noarch::qtconsole-4.5.4-py_0
  send2trash         pkgs/main/linux-64::send2trash-1.5.0-py37_0
  sip                pkgs/main/linux-64::sip-4.19.8-py37hf484d3e_0
  six                pkgs/main/linux-64::six-1.12.0-py37_0
  terminado          pkgs/main/linux-64::terminado-0.8.2-py37_0
  testpath           pkgs/main/linux-64::testpath-0.4.2-py37_0
  tornado            pkgs/main/linux-64::tornado-6.0.3-py37h7b6447c_0
  traitlets          pkgs/main/linux-64::traitlets-4.3.2-py37_0
  wcwidth            pkgs/main/linux-64::wcwidth-0.1.7-py37_0
  webencodings       pkgs/main/linux-64::webencodings-0.5.1-py37_1
  widgetsnbextension pkgs/main/linux-64::widgetsnbextension-3.5.1-py37_0
  zeromq             pkgs/main/linux-64::zeromq-4.3.1-he6710b0_3


Proceed ([y]/n)? u^Hy
Invalid choice: y
Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

jupyterlab パッケージのインストール:

(trial_env) [tsflow@localhost ~]$ conda install jupyterlab
Collecting package metadata (current_repodata.json): done
Solving environment: done

## Package Plan ##

  environment location: /home/tsflow/anaconda3/envs/trial_env

  added / updated specs:
    - jupyterlab


The following NEW packages will be INSTALLED:

  json5              pkgs/main/noarch::json5-0.8.5-py_0
  jupyterlab         pkgs/main/linux-64::jupyterlab-1.0.2-py37hf63ae98_0
  jupyterlab_server  pkgs/main/noarch::jupyterlab_server-1.0.0-py_1


Proceed ([y]/n)? y

Preparing transaction: done
Verifying transaction: done
Executing transaction: done

jupyter lab の立ち上げと Webブラウザからの接続
jupyter lab の立ち上げ:

(trial_env) [tsflow@localhost ~]$ nohup jupyter lab >> jupyter.log 2>&1 &
[1] 29147

上記の形式で、jupyter lab がサーバーマシンのバックで稼働。

 
Webブラウザから接続:

Jupyter Notebook をLANの外から使うためのApacheの設定で記述したように、任意のリモートマシン上のWebブラウザからアクセス可能になる。

下図は、最初にアクセスした時の初期(ログイン)画面のスナップショット。(図をクリックすると拡大できる)

ここ以降の、pythonの外部パッケージのインストール作業などは、全て、Jupyter Lab上で実行することができる。
  


Post a Comment