MacPCにSlackbotの本体を置いていたいのですが、PCを閉じてしまうとプロセスが中断してしまうため、レンタルサーバーに常駐させて永続的に稼働させることにしました。
サーバーに置いておけばスマホからちょっと試してみたいことがある場合にも便利です。
本記事では今回作業した内容をまとめています。
Slackbotの作り方については「SlackbotをPythonで作成しよう」をお読みください。
◆今回使用した作業環境
使用サーバー:Xサーバー
操作に使用したPC :MacBookPro
1画面でやってたら非効率極まりないので2画面でやることをおすすめします。
目次
SlackbotをXserverで稼働させるための手順
・ソースコードをサーバーにアップロード
・pipコマンドを使えるようにする
・npmを導入
・Slackのワークスペースから新しいAPIトークンを取得
・APIトークンを環境変数に定義
・foreverコマンドでBotプロセスを永続化
レンタルサーバーの利用方法などは割愛します。
ソースコードをサーバーにアップロード
まずはソースコードをサーバーにアップロードしましょう。
今回はGitHubからソースコードをクローンしました。
GitHubが使えるならコードの修正の反映の時にも便利なのでおすすめです。
GitHubにアクセスするためには「個人のアカウントを作ってそのアカウントでアクセスする方法」と「サーバーの公開鍵をGitHubに登録してアクセスを許可する方法」の2つがあります。
個人でやっているなら自分のアカウントを使っても良いですが、チームでやっている場合や後々人が入ったことを考えると公開鍵を登録する方が良いでしょう。
pipコマンドを使えるようにする
Xサーバーは元々Pythonが入っていますが、なぜかpipコマンドが入っていないため、ライブラリの追加ができません。
よってpyenvで環境を整えてインストールする必要があります。
npmコマンドを導入
foreverコマンドを使うのでnpmコマンドのインストールも必要です。
npmコマンドの導入が終わったらforeverコマンドもインストールしましょう。
APIトークンを取得と設定
APIトークンを取得してAPIをOSの環境変数に定義します。
APIトークンの取得方法及びOSの環境変数に定義については「SlackbotのAPIトークンを取得する(動画あり)〜Hubotのインストール〜」をお読みだくさい。
foreverコマンドでSlackbotプロセスを永続化
foreverコマンドを使ってプロセスを永続化します。foreverコマンドで永続化したコマンドはターミナルを閉じても継続されます。
以上、Slackbotをサーバーにアップする方法でした。
以前似たような作業はやったことがありましたが、XサーバーでBotを管理する作業は初めてだったので1日くらいかかってしまいました。
◆参考にした記事
まとめ
Slackbot(Python)をアップするために必要な作業は以下となります。なお、ソースコードが完成していることとサーバーの契約が完了していることが前提条件です。
・ソースコードをサーバーにアップロード
・pipコマンドを使えるようにする
・npmを導入
・Slackのワークスペースから新しいAPIトークンを取得
・APIトークンを環境変数に定義
・foreverコマンドでBotプロセスを永続化
細かい作業の手順については別途記事を作成する予定です。
やることはそんなに多くないですが、詰まる要素がそれなりにあるので結構苦戦しました。
次はサーバーの管理のための処理を作っていきたいと思います。
Slackbot+PythonまとめTOP>>Slackbotの作り方マニュアル〜Python編〜