質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

2564閲覧

python開発環境、本番サーバーへの移行方法について

taharasan

総合スコア55

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1グッド

0クリップ

投稿2018/12/22 01:09

pythonの開発環境、又、本番サーバーへ移行する際の方法についてご教授願います。

現在、開発環境にて以下「移行タイプA」の様に
プロジェクトフォルダー(\プロジェクトA子)以下にモジュールをインストール、プログラムファイルを作成し
本番移行時には、プロジェクトフォルダーを本番サーバーへコピーし実行しています。

最近になって、仮想環境(venv)を知ったのですが、以下「移行タイプB」の様に
仮想環境(\プロジェクトB子)を作成し、仮想環境以下にモジュールのインストール、プログラムファイルを作成

本番移行時に本番サーバー上にも仮想環境を作成、モジュールインストールし
プログラムファイルだけ開発環境からコピーし実行した方が良いのでしょうか?

自分なりにメリット、デメリットを記載しましたが、ノウハウ等があれば教えてください。

##■移行タイプA

md c:\dev\プロジェクトA子 #プロジェクトフォルダー作成 cd c:\dev\プロジェクトA子 pip install pyodbc -t . # プロジェクトフォルダー以下にモジュールインストール 取込バッチ.py # プログラム作成

【メリット】

プロジェクトフォルダーコピーだけで稼働する。
本番サーバー上でpipにてモジュール追加する必要がない。

【デメリット】

pip でモジュール管理ができない
プロジェクトフォルダー毎にモジュールをインストールする必要がある。

■移行タイプB

python -m venv c:\dev\プロジェクトB子 #仮想環境作成 c:\dev\プロジェクトB子\Script\activate #仮想環境有効 pip install pyodbc #仮想環境以下にモジュールインストール cd .. 取込バッチ.py # プログラム作成

【メリット】

pip でモジュール管理が可能

###【デメリット】
本番サーバーで仮想環境を作成する必要がある。
本番サーバーでモジュールを追加する必要がある。
仮想環境を作成する為、HDD容量を消費する

##■環境
Windows10 x64
python 3.6

tachikoma👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

移行タイプAは、使用しているパッケージが開発環境と本番サーバで同じものになります。それで、パッケージをアップデート(Pythonでいうマイクロバージョンのアップグレードは除く、以下同じ)したい場合に、開発環境だけでのテストが不可能です。パッケージのアップデートをテストなしで本番環境で行うのはかなり無謀だと思います。

それで、pip install pyodbc -t .と一度インストールしたら、pip install --upgrade pyodbc -t .とアップグレードはしないという条件であれば移行タイプAがいいと思われますが、そうでなければ開発環境と本番サーバは別に環境を持つ必要があります。

投稿2018/12/30 09:32

編集2018/12/30 10:06
YasuhiroNiji

総合スコア584

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

taharasan

2019/01/04 01:38

ありがとうございます。パッケージは大きな不具合がない限り基本的にアップデートを行わない為 今後も移行タイプAで行います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問