CentOS7 の Python プロジェクトのオフライン デプロイメント

1 はじめに

主なプロセスは次のとおりです。
(1) プロジェクト環境を作成し、requirements.txt ファイルを生成します。(あれば飛び出せます)
(2) ターゲットマシンと同じオペレーティングシステムと Python 環境で新しいテストサーバーを作成し、Python プロジェクトに必要なサードパーティの依存関係パッケージをダウンロードします。
(3) テストサーバーから依存ファイルをダウンロードし、オフラインサーバーにアップロードします。
(4) Python オフライン依存関係パッケージをインストールし、Python プロジェクトを実行します。

PS1: この記事の[pip3]はプロジェクト環境によって設定されます。そのようなコマンドがローカルに存在しないというメッセージが表示された場合は、pip コマンドを試してください。
PS2:オフライン インストールの Python チュートリアルのアドレス

我以 window系统下开发环境,部署到 centos7 离线服务器上。

2. テストサーバー上にプロジェクト環境を作成する

如果已有requirements.txt,跳过本章节。
このプロジェクトでは主にpipenvを使用してプロジェクト仮想環境を作成しています。興味のある方はpipenv-tutorialを参照してください。
このプロジェクトはプロセスプロジェクト仮想環境を作成していないため、requirements.txtファイルは生成できません。最初のステップは、プロジェクトの仮想環境を整理し、requirements.txt ファイルを生成する準備をすることです。

(1) プロジェクト仮想環境の作成

# 安装虚拟环境
pipenv install
# 进入虚拟环境
pipenv shell 

(2) サードパーティの依存パッケージを順番に再インストールします

注: プログラムを繰り返し実行し、依存パッケージが表示されなくなるまで、pipenv install を使用して順番にインストールします。

# 安装第三方依赖包命令
pipenv install <package 第三方依赖包> --skip-lock

(3)requirements.txtの生成

# 生成requirements.txt
pipenv lock                                # 生成速度慢,耐心等待
pipenv requirements > requirements.txt

3. サードパーティの依存関係パッケージを仮想マシンにダウンロードします。

対象サーバーに合わせて、同じシステム環境とPython環境の仮想マシンを作成します。主な理由は、Windows 開発環境の依存パッケージとターゲット サーバーの centos7 環境では多くの違いがあるためです。おかしなエラーを避けるために、依存パッケージは同じ環境でダウンロードするようにしてください。h
(注:オフライン インストール Python チュートリアルのアドレス)

# 1.打开项目所在地址
cd <project_path>                               # project_path为项目地址

# 2.下载第三方依赖包
pip3 download pipenv -d packages                # 下载pipenv依赖包,保存至packages文件夹,用于创建离线环境
pip3 download -d packages -r requirements.txt   # 下载requirements.txt相关依赖包

# 3.安装pipenv依赖包,进入项目虚拟环境
pip3 install pipenv --no-index --find-links=packages   # 从packages文件夹,安装pipenv
ln -s /usr/local/python3/bin/pipenv /usr/local/bin/pipenv  # 创建pipenv指令
pipenv shell                                               # 进入虚拟环境

# 4.通过requirements.txt 批量安装依赖包
pipenv run pip3 install --no-index --find-links=packages -r requirements.txt

# 5.测试运行
# 在虚拟环境下,执行你所需 ***.py 文件,运行成功则ok。详见下图

ここに画像の説明を挿入

図 1: 仮想環境での Python ファイルの実行

4. サードパーティの依存関係パッケージをターゲット サーバーに転送します。

  1. テストサーバーからソースコードとサードパーティの依存関係をダウンロードする
  2. WinSCP.exe ツールを使用して、オフライン ファイルをサーバーにアップロードします。(注: /home/python3 フォルダーが存在しない場合は、手動で作成してください)

ここに画像の説明を挿入
(PS: パッケージ フォルダーにはオフラインのサードパーティ依存パッケージがあります。ダウンロードが完了した後、数量を確認してください)

図 2: テスト サーバーからローカル サーバーにファイルをダウンロードする

3. ローカルからターゲット サーバーにアップロードします。 ターゲット サーバーの /home/python3/Smart_Construction-master フォルダーに
アップロード (注: 必要に応じてプロジェクト フォルダーにアップロードします)。

ここに画像の説明を挿入

5. Python プロジェクトをターゲット サーバーにオフラインでインストールします

# 1.打开项目文件夹
cd /home/python3/Smart_Construction-master

# 2.安装pipenv依赖包
pip3 install pipenv --no-index --find-links=packages   # 从packages文件夹,安装pipenv

# 3.进入项目虚拟环境
ln -s /usr/local/python3/bin/pipenv /usr/local/bin/pipenv  # 创建pipenv指令
pipenv shell                                               # 进入虚拟环境

# 4.通过requirements.txt 批量安装依赖包
pipenv run pip3 install --no-index --find-links=packages -r requirements.txt

# 5.运行程序,搞定收工。

おすすめ

転載: blog.csdn.net/piao110liang/article/details/127923185