レンタルサーバのXserver上で、
Pythonで作成したファイルを動かす環境を構築した方法です。
色々ぐぐったりしてやりましたが難しかった、、、。
私は相当時間がかかってしまったので、
こちらを見ていただいた方が迷わないよう記事に残しておきたいと思います。
SSHログイン
通信方法であるSSHを用意てサーバにログインしていきたいと思います。
XserverのSSH設定マニュアルを参考に、公開鍵認証用の秘密鍵を作成・ダウンロードしましょう。
サーバーパネルへログインし、「→SSH設定」をクリックします。

「ONにする」に変更して、「設定する」をクリックします。

「公開鍵認証用鍵ペアの生成」へ移動して
「パスフレーズ」を入力し、
「確認画面へ進む」をクリックします。

「生成する」をクリックしましょう。

「公開鍵認証用の鍵ペア生成処理を実行しました」と表示され、
秘密鍵のダウンロードが始まり、
Downloadフォルダに「サーバーID.key」でファイルが保存されます。
Macのターミナルにて設定
ホームディレクトリに.sshフォルダを作成し、
秘密鍵を「id_xserver_rsa」と名称変更し保存しましょう。
$ mkdir ~/.ssh
$ mv ~/downloads/サーバーID.key ~/.ssh/id_xserver_rsa
アクセス権限を変更します。
700は所有者のみ読み書き実行可能、
600は所有者のみ読み書き可能です。
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/id_xserver_rsa
接続コマンドを簡単にしたいので、configファイルを作成します。
$ touch ~/.ssh/config
$ open ~/.ssh/config
openコマンドでファイルが開いたら、下記を記述して保存しましょう。
Host xsrv
HostName サーバーID.xsrv.jp
Port 10022
User サーバーID
IdentityFile ~/.ssh/id_xserver_rsa
ServerAliveInterval 60
これで「ssh xsrv」コマンドが簡単に接続できるようになりました。
※ 毎回コマンドから「ssh -l サーバーID -p 10022 サーバーID.xsrv.jp」
とするのを「ssh xsrv」で簡単にしています。
SSHログイン
先ほど作った「ssh xsrv」コマンドでログインしてみましょう。
パスワードが要求されますのでXserverで設定したパスフレーズを入力しましょう。
$ ssh xsrv
Enter passphrase for key '/.ssh/id_xserver_rsa':パスフレーズを入力
Xserver上の設定
次はXserver上の設定を行います。
Pythonやライブラリのインストールに
便利なパッケージ管理システム「Linuxbrew」をインストールします。
パッケージ管理システムとは、各種のソフトウェアの導入と削除、
ソフトウェア同士やライブラリの依存関係を管理するシステムです。
ターミナルからXserverにSSHログインした状態で
以下のコマンドを実行しましょう。
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/install/master/install.sh)"
$ test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
$ test -d /home/linuxbrew/.linuxbrew && eval $ (/home/linuxbrew/.linuxbrew/bin/brew shellenv)
$ test -r ~/.bash_profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile
$ echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile
Xserver上にプロジェクトを作成してpyファイルを置く
コマンドからもできると思いますが、今回はWebから行う方法で説明します。
インフォパネルへ移動します。
操作メニューから「ファイル管理」をクリックします。

フォルダを移動します。
[サーバーID].xsrv.jp/public_html
私は「python」フォルダを作り、
更にその下に動かしたいプロジェクトを作りました。
お好みでプロジェクトファイルを作成してください。

[サーバーID].xsrv.jp/public_html/python/プロジェクト
という構成になりました。

Pythonファイル達をファイルを選択してアップロードしました。

PythonとPipenvのインストール
ターミナルからXserverにSSHログインした状態で
以下のコマンドを実行しましょう。
$ brew install python
$ brew install pipenv
pipenvでライブラリをインストール
ターミナルからXserver上の、プロジェクトフォルダに移動します。
$ cd [サーバーID].xsrv.jp/public_html/python/プロジェクト
Pipenvにて必要なライブラリをインストールしましょう。
私は「tweepy」をインストールしました。
$ pipenv install tweepy
プロジェクトフォルダに設定が記述された
「Pipfile」と「Pipfile.lock」が作成されました。
適用させるためにこちらのコマンドも叩いておきましょう。
$ pipenv shell
$ pipenv run
これで準備完了です。
動作確認
実行したいファイルを指定して、
ターミナルから実行させましょう。
※ [サーバーID].xsrv.jp/public_html/python/プロジェクトにいる想定です。
$ python3 test_run.py
これで動けば、成功です。
次回からは設定もないはずなので、
動かしたいファイルを「python3」を使って実行させましょう。
次回に
「cronでXserverのPythonを定期実行をしよう」
の記事を書きたいと思います。
最後まで読んでいただきありがとうございました。
コメント