# 紅葉のインストール方法

□Windowsの場合
Windowsにはコマンドラインとターミナルが有ります。
今回試したら以下の手順でどちらでも動きました。
ターミナルの場合、次の一文が必要です。
Set-ExecutionPolicy RemoteSigned Process

cd C:\test\myFlask
まず仮想化を作成するディレクトリに移動する。
今回の例では「C:\test\myFlask」の場所に作成する。
Cドライブの中に「test」というフォルダが用意されてあり、その中にまた「myFlask」というフォルダが有ることを仮定している。ここは自由に変更してよい。説明ではこの設定で説明を進める。

python -m venv .venv
仮想化の作成。ここでは「.venv」という名前の仮想化を作成している。この操作はインターネットに接続している必要が有ります。

仮想化を有効化する。
ターミナルで動かす場合、以下の一文を入力する。権限をつけている。コマンドラインの場合は不要。
Set-ExecutionPolicy RemoteSigned Process
.\.venv\Scripts\activate
改めて仮想化を実行する。
これで仮想環境が有効化される。
左の文字が
.venv) PS C:\test\myFlask>
と成っていて、仮想化が動いているのが確認できます。

次にカレントディレクトリ（c:\test\myFlask）に紅葉のファイルをコピーする。
カレントディレクトリにmomijiが追加されていることになる。
コピー後、momijiに移動する。

cd momiji
紅葉のディレクトリに移動する。

pip install -r requirements.txt
紅葉で利用するモジュールとサーバーをインストールする。

今回アップグレードして欲しいと注意された。
指定されたようにコマンドを打つ（コピーアンドペーストで良い）。
python.exe -m pip install --upgrade pip

改めてモジュールをインストールする（キーボードの上ボタンで入力を省ける。）。
pip install -r requirements.txt

動作確認。
デバッグモードでの起動方法

(.venv) PS C:\test\myFlask\momiji> python kaigosys.py

このモードだとデバッグモードで状態が確認でき、エラーが発生したらメッセージを読めます。ブラウザからもPINコード打つことで、実行中のPythonにコードをタイプして、現状を確認することができます。

サーバーを動かさず、コンピュータ一台で動かす場合
python kaigosys.py
の一行で実行できます。
コマンドラインに
* Running on http://127.0.0.1:4888
と表示されるので、それをCtrlキーを押しながらクリックするとブラウザが開きます。
紅葉の利用でエラーが出るときに、このデバッグモードを使うと、エラーの詳細が表示されるようになります。ブラウザに入力するPINコードはデバッグモードを起動したコマンドラインに書かれています。これをコピーアンドペーストします。

「Ctrl + c」キーでテストを終了

サーバーを起動する。
waitress-serve --port=4888 kaigosys:app
これで起動した。
アクセスするにはこのコンピュータのIPアドレスとポート番号をブラウザのURLの欄に入力する。

ipconfig

IPアドレスの確認
IPv4 アドレス . . . . . . . . . . . .: 192.168.1.12
の欄の右の.区切りの4つの数値がこのコンピュータのIPアドレス。
これはコンピュータの再起動などで中継器に接続し直すと変更されることがある。
IPアドレスに:をはさんでポート番号を合わせた数値をブラウザのURL欄に入力する。
http://192.168.1.12:4888/
ポート番号を変えれば、同じコンピュータで複数のサーバーを同時に運用できる。ポート番号は1024以上値であれば自由に設定してよい。1024以下は指定されたアプリが決まっている（普通のWebサーバーはポート番号は80番で、これは普段省略されている）。

インストールが済んだら、以降以下のコマンドを順に入力することで紅葉を起動できる。
cd C:\test\myFlask
Set-ExecutionPolicy RemoteSigned Process
.\.venv\Scripts\activate
cd momiji
waitress-serve --port=4888 kaigosys:app

# Raspberry Piで動かす。

今回LinuxはRaspberry Piとchromebookを利用しました。
Raspberry Piではすんなり動きましたが、chromebookではポートを開放する設定が必要でした。
またchromeOS Flex（無料で配布されいてるOS）では、現時点でポートの開放の設定が表示されませんでした。設定画面を検索して出しても、設定内容が有効化されず、他のデバイスからアクセスすると、「拒否された」とエラーがでてつながりませんでした。
こちらで動作確認がとれているのは、Raspberry Piと、chromebookになります。（chromebookとchromeOS Flexは別として考えています）。

Raspberry Piの場合。
myFlaskというディレクトリに仮想化の環境.venvを作成してインストールします。
入力コード例

cd myFlask/
python3 -m venv .venv
source .venv/bin/activate
cd momiji/
pip install -r requirements.txt
waitress-serve --port=4888 kaigosys:app

以下補足説明。
cd myFlask/
でmyFlaskのディレクトリに移動する。
python3 -m venv .venv
で仮想化のインストール。
source .venv/bin/activate
で仮想化されたPythonを実行する。
cd momiji/
紅葉のフォルダに移動する。
pip install -r requirements.txt
で必要なライブラリをインストールする。
requirements.txtには紅葉が使うライブラリのリストが入っている。紅葉のフォルダの中にこのテキストファイルは有る。
waitress-serve --port=4888 kaigosys:app
紅葉を動かすWebサーバーを起動する。
4888はポート番号です。自由に変更してください。
以降は毎回起動するときに
cd myFlask/
source .venv/bin/activate
cd momiji/
waitress-serve --port=4888 kaigosys:app
を実行する。

# chromebookで動かす。

まずターミナルを起動します。Linuxを立ち上げる為です。

次にポートを開放する設定を行います。普通の状態ではポートは閉められていて外部からアクセスできなくなっています。ここでは紅葉にアクセスできるようにポートを開放します。ここの例の番号はあくまで参考で、自分たちで変更して大丈夫です。

設定を開きます。

「Linux開発環境」を選びます。

「ポート転送」を選びます。

「追加」ボタンを押します。

ポート番号を入力します。今回の例では4888です。利用したい予定のポートの番号を入力してください。（TCP）は通信する方式で、紅葉ではTCPの設定で利用します。

開放したいポートがリストに表示されまし。トグルの切り替えで設定を有効化、無効化を選べます。追加の横の点をクリックすると、全部の設定を一度に削除できます。

これでサーバーを起動すれば、他のデバイスからchromebookの紅葉にアクセスできます。アクセスする場合にはIPアドレスを知っておく必要がり、chromebookでの確認方法を説明します。

動かすのに必要なライブラリ、モジュールをインストールする手順。
注意したいのはchromebookではサーバーの起動に以下の様に--host=0.0.0.0のオプションを付け加えること。

cd myFlask/
python3 -m venv .venv
source .venv/bin/activate
cd momiji/
pip install -r requirements.txt
waitress-serve --host=0.0.0.0 --port=4888 kaigosys.app

仮想化を無効化するには以下のコマンドを打ちます。

deactivate

これでインストールはおしまいです。

戻る