001_5.0.0 サーバーへアップし、スマホから使ってみよう

これまで作成してきたWebアプリをインターネットで公開されているサーバーにアップして、世界中どこからでも使えるようにしてみましょう。

今回、使用するサーバー

弊社(株式会社SARATEC.Me)でレンタルしているXServerVPSを利用して演習を行います。
演習でアップしたアプリは、演習終了3日後に削除いたしますのでご了承ください。

弊社のバーチャルプライベートサーバー(仮想の個人サーバー)はLinuxというOS(普段、みなさんはWindowsやMacOSという綺麗な画面でマウス操作できる環境のOS)です。
※Linuxの中でもUbuntu 22.04という名前の製品を使います。

Linuxは特別に綺麗な画面で操作をするXWindowという機能を追加しないかぎり、黒い画面に白い文字だけで操作するCLI(コマンドラインインターフェイス)です。

これまで演習で登場した「パワーシェル」や「コマンドプロンプト」と同じです。

サーバーに接続する

サーバーに接続して操作するにはSSHという仕組みを使います。
SSHでサーバーに接続すると、手元のパソコンに表示されている黒い画面に白い文字のCLIの画面でサーバーを操作することになります。

まずはあなたのWindowsパソコンから、遠隔地にあるUbuntuサーバーの中に入ります。

1.Windowsのスタートボタンを右クリックし、「ターミナル」(または「Windows PowerShell」「コマンドプロンプト」)を開きます。

2.以下のコマンドを入力して Enter キーを押します。(ユーザー名とIPアドレスはご自身の環境に合わせて変更してください)

ssh -i [秘密鍵のファイル名] [ユーザー名]@[サーバーのIPアドレス]

今回ご準備させていただいたユーザー名は

kagawa パスワードは202608305kaime

ishikawa パスワードは202608305kaime

です。サーバーのIPアドレスは「85.131.249.127」となります。

ssh -i c:\ServerConnect\flask-training kagawa@85.131.249.127
ssh -i c:\ServerConnect\flask-training ishikawa@85.131.249.127

となります。

[ユーザー名]@x85-131-249-127:~$

と、入力待ちになっているでしょうか?

サーバーにFlaskが動く環境を作る

Flaskを動かしたり、安全に通信を受け付けるための基本ソフトをまとめてインストールします。

sudo apt install python3-venv python3-dev python3-pip nginx ufw -y

環境確認

次のコマンドを入力して確認します。

nginx -v

nginx version: nginx/1.18.0 (Ubuntu)などバージョンがでましたか?

ufw version

ufw 0.36.1などバージョンはでましたか?

pip3 --version

pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)などバージョンはでましたか?

python3 -m venv --help

usage: venvの使い方説明文みたいなものが表示されればOKです。

ファイル転送先としてサーバーと接続する

接続することが確認できたら、次はファイルのアップロードなどの準備をします。
ファイルのアップロードは、次のアプリを利用しましょう。

WinSCP :: Official Site :: Download
WinSCP is a free file manager for Windows supporting FTP, SFTP, S3 and WebDAV.

Windows版の64bitの方を選択しダウンロード、インストールしてください。

接続設定をします。

次に設定をクリックし、認証をクリック。秘密鍵の最後尾の・・・をクリックします。

ファイルを選択画面で秘密鍵のファイルを選択⇒「flask-training」です。OKとし、

ファイル名はそのままで「保存」

以上です。OKボタンを押し、戻った画面で保存しましょう。

左側がWindowsの画面、右側がサーバーの画面となります。

アップロードする

app.pyファイルを中心に、アップロードするべきファイルをClaudeCodeに聞いて、もれなくアップデートしましょう。

アップロードしたら。サーバーにログオンして、仮想環境を構築します。

cd [アプリのapp.pyのあるディレクトリに移動します]
python3 -m venv venv
source venv/bin/activate
pip install flask gunicorn

アプリを実行します

nohup gunicorn --workers 3 --bind 127.0.0.1:[ここの番号は打ち合わせ] app:app &

5174は香川さん、5178は石川さんでお願いします。