0
0

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 1 year has passed since last update.

Offline Python環境の構築 (For CentOS7)

Last updated at Posted at 2022-01-04
  • Offline環境にあるCentOS7のシステムpythonに対して、所望のパッケージを入れることを目的とします。
  • はじめにOnline環境において所望のpython関連パッケージをダウンロードしますが、AWSのCentOS7の最新イメージ上で行うこととします。

Pythonの必要パッケージのダウンロード(オンライン環境)

事前準備

あらかじめインストールされていないrpmパッケージをyumでインストールします。

command
sudo yum install -y git
sudo yum install -y zlib-devel
sudo yum install -y openssl-devel
sudo yum install -y sqlite-devel.x86_64
sudo yum install -y xz-devel
sudo yum install -y tree

以下の作業はオンライン環境にあるCentOS7の環境で実施してください。

pyenvのインストール

pyenvのインストール

pyenvのgithubに従って、pyenvをインストールします。Basic GitHub Checkoutのセクションから進めてください。

pyenvの有効化

terminalを新しくするか、以下のコマンドでインストールしたpyenvを有効化してください。

command
source .bash_profile 

python 3.6.8 のインストール

今回はOffline環境のCentOS7の system pythonのバージョンに一致するために、3.6.8 をインストールしてみます。

インストール可能バージョンの確認

インストール可能なバージョンとして、3.6.8 があることを確認します。

command
pyenv install --list

3.6.8 のインストール

3.6.8 をインストールします。

command
pyenv install 3.6.8
Downloading Python-3.6.8.tar.xz...
-> https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tar.xz
Installing Python-3.6.8...
Installed Python-3.6.8 to /home/centos/.pyenv/versions/3.6.8

pyenv でインストールした 3.6.8 への切り替え

system pythonから 3.6.8 への切り替え

command
pyenv global 3.6.8

正しく切り替わったことの確認

command
pyenv versions
  system
* 3.6.8 (set by /home/centos/.pyenv/version)

正しくインストールされていることを確認します。

command
python -VV
Python 3.6.8 (default, Jan  4 2022, 09:23:47) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-44)]

必要パッケージのインストール

pip のupdate

command
pip install --upgrade pip

現状のインストールされたパッケージの確認

command
pip freeze
(返り値なし)

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

command
pip install pandas
pip install pip-licenses
pip install pipdeptree
pip install seaborn
pip install scikit-learn
pip install jupyterlab

インストールパッケージ一覧のダウンロード

インストールされているパッケージの一覧作成

command
pip freeze > requirements.txt
cat requirements.txt

パッケージのダウンロード

command
mkdir -p src
pip download --dest=src -r requirements.txt

get-pip.pyのダウンロード

これは、offline環境にpipが使えない場合、必要となります。

command
curl https://bootstrap.pypa.io/get-pip.py -o src/get-pip.py

パッケージのインストール (オフライン環境)

以下の作業はオフライン環境にあるCentOS7の環境で実施してください。

テストとして先程のオンライン環境でOffline環境での作業内容を確認する場合は以下を実行し、クリーンなpython環境に戻してテストすると良いでしょう。

  • pyenv uninstall 3.6.8
  • pyenv install 3.6.8

必要ファイルの持ち込み

上記で作成した以下のファイル/ディレクトリをOff-Line環境に持ち込みます。

  • requirements.txt
  • src
  • get-pip.py

インストール

ファイルPATHを定義

PATHを定義

command
SRC="src/"
REQUIREMENTS="./requirements.txt"
PIP="src/get-pip.py"

PATHの確認

command
ls -l ${SRC} | grep -e ".whl" -e ".gz"
ls -l ${PIP}
ls -l ${REQUIREMENTS}

pipのインストール or Update

command
python3 ${PIP} --no-index --find-links=${SRC}

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

-m オプションに関しては "Pythonの「-m」オプションについて"を参照してください。

command
python3 -m pip install --no-index --find-links=${SRC} -r ${REQUIREMENTS}

インストールパッケージの確認

command
pip freeze
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?