さくらインターネットのVPSでサーバを立てる

GCPにpythonサーバをデプロイしていたが、料金が高くなりそうなので、月額料金が決まっているさくらのVPSにデプロイしてみる。

ゴール

さくらインターネットのVPSでpythonサーバをたてて、hello worldを出力させる。

VPS

初めにVPSを契約する。VPSの選択肢は色々ある。

最安(おそらく)の WebARENA Indigo にしようと思っていたが、インスタンスの在庫不足。

Indigo Linux全インスタンスの在庫不足」せっかく登録したが、インスタンスの作成ができないらしいので諦めて、すぐに解約

少し高くなるが、さくらインターネットを契約する。643円/月。初回に2ヶ月分契約する必要がある。

会員登録して、VPSの申し込みを行う。契約中のサービス一覧–>VPSのコントロール画面を開く。

さくらVPSにssh接続する

  1. 各種設定 –> OSのインストール
  2. $ssh ubuntu@your_IP

必要なソフトをインストール

  1. $sudo apt-get update
  2. $sudo apt-get install libapache2-mod-wsgi python-dev
  3. $sudo apt-get install libapache2-mod-wsgi-py3 python3-dev
  4. $sudo apt install python3-pip

参考サイト。「How To Deploy a Flask Application on an Ubuntu VPS | DigitalOcean」、「さくらVPS, Ubuntu 18.04, apache2, flask – Qiita

tmuxとvimもついでにインストールする。

ポートの開放

必要があれば開放する。

$sudo ufw allow 443

sshを許可

$sudo ufw allow ssh

確認。

$sudo ufw status verbose

Apache Webサーバーを起動

Ubuntu 20.04にApache Webサーバーをインストールする方法 | DigitalOcean

Flaskを使用してHello Woldを出力させる

  1. Flaskで「Hello World」を出力させる – Qiita」を参考にpythonコードをかく
  2. ポートは443にする(さくらサーバーでは443と80が開いている。)
  3. $sudo python3 -m pip install flask
  4. $sudo python3 main.py 
  5. ブラウザから your_IP:443 にアクセスする

pythonやpipを使用するときに、ログインユーザとrootユーザで違う環境かもしれないので、sudoをつけてflaskのインストールを行う。

参考「Python – ターミナルでsudo python 〇〇.pyとするとモジュールがないと言われる。|teratail

終わりに

python環境は改善の余地がありそうだが、さくらVPSでpythonサーバを立てることができた。

これから徐々にアプリを公開していきたい。

Comments

タイトルとURLをコピーしました