どうも!リョクちゃです。
今回は、以前にPythonで作ったプログラムを指定した時刻に動かしたく思って、
自身のパソコンで当初は行っていたのですが、やはり常時PCをつけっぱだと負担が
大きく、電気代もかかってしまうので、レンタルサーバを使ってどうにかできないか
検証したのでまとめていきます。
ちなみに前回のPython勉強会はこちら
目次
使用したレンタルサーバの環境
以下のレンタルサーバを検証しました。
- サーバ名 : さくらサーバ
- プラン名 : スタンダードプラン
スタンダードプラン以上でないとPythonの構築ができないので注意
契約前に2週間の無償体験があるので、これを利用して実際に動作可能か検証していきます。
プランごとの価格を載せておきます。
No | プラン名 | 価格 |
---|---|---|
1 | ライト | 600 |
2 | スタンダード | 1,600 |
3 | プレミアム | 4,000 |
4 | ビジネス | 7,000 |
5 | ビジネスプロ | 12,000 |
必要な情報
.pyファイルのやり取りを自身のPCとレンタルサーバ上で行うので、
以下の情報が必要になります。
- FTPサーバ名 (ドメイン名)
- FTPアカウント
- FTPパスフレーズ (サーバのPath(パス))
SSH接続を行うので、”Poderosa“という、フリーソフトをインストールする。
→ Poderosa-4.4.5-bin.zipをダウンロードし、インストールしておきます。
Pythonプログラムを実行できるようにするまで
Poderosaを立ち上げ、新規SSH接続の作成をする
事前準備でインストールした、Poderosaを立ち上げます。
ファイル → 新規Telnet/SSH接続を押します。
事前準備で用意した必要な情報を入力していきます。
ホスト名 → FTPサーバ名
アカウント → FTPアカウント
パスフレーズ → サーバのパスワード(ログイン)
を入力し、”OK”を押します。
接続が正常にいくと、下図のような画面に切り替わります。
ログインシェルをcshからbashへ変更
こちらは後に分かったのですが、cshでもできるので使い慣れた方で進めてください。
デフォルトでは、cshなのでbashに変更する方法を載せておきます。
以降は、bashでの方法についてまとめていきます。
Poderosa上で$マークの後に、コマンドを入力することで
実行したいコマンドを走らせることができます。
まず最初にcshかbashかの確認を以下のコマンドで行いましょう。
どのシェルを使っているのか確認をしておきます。
1 |
set | grep -ai version |
既にbashの場合は、以下のような出力になるかと思います。
bashに変更したい場合、以下のコマンドを入力し変更します。
1 |
cash -s /usr/local/bin/bash |
.bash_profileを作成する
最初に設定する際は、.bash_profileが作成されていない場合がありますので、
作成していきます。
まずエディタを開きます。
下図のような画面が開きます。※最初は何も記載されていない状態になるかと思います。
主な操作方法(キーボード操作)
- i : 編集モード
- ESC : 編集モード終了
- 終了は ESC押下後 → :wgで保存して終了
エディタでは以下の設定をします。
1 2 |
set path = ($path $HOME/local/python/bin) setenv PYTHON $HOME/local/python/lib |
これを入力し、保存してエディタを閉じます。
作業用のディレクトリを作成
任意の場所に作業用のディレクトリを作成しておきましょう。
例
1 |
mkdir -p ~/work/python |
作成した作業ディレクトリへ移動
以下のコマンドを使って、作成した作業ディレクトリへ移動します。
例)
1 |
cd ~/work/python |
Pythonファイルを取得
インターネットからPythonのインストーラーを取得します。
取得するには以下のコマンドを使用します。
1 |
wget --no-check-certificate https://www.python.org/ftp/python/<バージョン>/Python-バージョン.tgz |
※バージョンには、取得したいバージョンを入力してください。
取得した.tgzファイルを解凍
解凍には、以下のコマンドを使用します。
1 |
tar -zxvf ./Python-バージョン.tgz |
解凍すると、”Python-バージョン”フォルダが作成されます。
解凍したフォルダへ移動
cdコマンドを使用して、解凍したフォルダへ移動します。
1 |
cd ./Python-バージョン |
Pythonのインストール
解凍したフォルダからPythonをインストールします。
以下のコマンドを使用し、設定のチェックを行います。
※インストール前に実行します。
1 |
./configure CPPFLAGS = "-I/usr/local/ssl/include" LDFLAGS = "-L/usr/local/ssl/lib" --prefix = $HOME/local/python |
configureでは、configureというスクリプトファイルを実行します。
必要な環境変数やライブラリが正しく設定されているかなどのチェックを行います。
チェックした結果からMakeFileといったファイルが作成されます。
→ configureコマンドを使えば、アプリケーションがインストールされる環境を
自動的に調べ、その環境に合わせたMakeFileを自動的に作ることができます。
次に以下のコマンドを使用します。
1 |
make |
makeコマンドは、オプション無し、引数無しで実行することで、
MakeFileを参照し、MakeFile内のデフォルトの処理を行います。
※MakeFileが作成されたパスに気を付けて実行する必要があります。
オプションを使うことで別のファイルを参照することも可能
次に以下のコマンドを使用します。
1 |
make install |
makeコマンドによって、コンパイルされたアプリケーションをインストールします。
ここでは、Pythonのインストールを行っています。
MakeFileに記述された、”install”というラベルから処理を実行するという動作をしています。
MakeFile
コンパイル、リンクやインストールなどのルールが
記述されたテキストファイルのことをいいます。
設定した内容を反映
以下のコマンドを使用します。
1 2 3 |
source ~/.bashrc rehash |
rehash
ハッシュテーブルの再構築を行います。
データ構造のひとつ、構造(key)と対応する値(value)のペアを単位として、
データを格納しキーを指定すると対応する値を高速に取得できる構造
Pythonの辞書型に近しい?
installされていることを確認
以下のコマンドを使用し、installされているかを確認します。
1 |
which python3 |
Pythonのバージョンを確認
以下のコマンドを使用し、インストールされたPythonのバージョンを確認します。
1 |
python3 --version |
Pythonを実行
以下のコマンドを使用し、Pythonを実行します。
1 |
python3 |
起動したら、以下の内容を打っていきます。
1 2 |
>>>import sys >>>sys.path |
結果が出力されていれば、問題なさそうです。
作業用ディレクトリの削除
最後に作業用に作成したディレクトリを削除しておきます。
※特に気にならない方は残しておいても問題ないです。
例)
1 |
rm -r ~/work/python/ |
まとめ
さくらサーバ上でPythonを走らせる方法について簡単にざっくりとまとめてみました。
道中様々な困難に直面しましたが、なんとかレンタルサーバ上で
Pythonを実行させることに成功しました。
これにより、指定した日時にPythonプログラムを実行させることができるようになり、
自宅のPCを常時起動しなくてもよくなりました……。
電気代の節約につながりますね。
……といいたいところですが、レンタルサーバの契約費用を加味すると、
トントンかもしれません。
※さくらサーバは比較的コスパには申し分なし、使ってみると
煩わしい設定などないので使いやすいかもって感じでした。
→ さくらのレンタルサーバ スタンダード
勉強になったのでよしとします。
最後までお読みいただき、ありがとうございます。
・こちらの書籍を参考にPythonの理解を深めました。