Newspipe のインストール

Feedbin の設置には成功したものの、どうやってもフィードを更新してくれなくて、使用を断念したが、他によさげなアグリゲーターがないか、😎 Awesome lists about all kinds of interesting topicsで探したところ、Newspipe が使いやすそうだったので、これをインストールしてみた。

結果から言うと、丸二日かかって稼働に成功。やったね!😁

まず、Python 3.7 以上が必要だが、Debian 9 (Stretch) に入っているのは、3.5。ということで、ソースからインストールする。現時点での最新版は、3.7.3

最初に、前提となるパッケージをインストールしておく。

次に、適当なところでアーカイブを展開し、以下を実行する。

--enable-shared オプションって推奨されてないんじゃないの?と思う人もいるかも知れませんが、mod_wsgi に共有ライブラリが必要なので、指定せざるを得ません。最後の ldconfig は、Python 共有ライブラリを認識させるためのおまじない。やっておかないと実行時にエラーが起きます。

Python がインストールできたら、PostgreSQL も必要なので、インストールしておく。うちは、別インスタンスにインストール済みなので、パス。いずれにせよ、データベースを作成しておく。

NewspipeGitLab からクローンする。

Newspipe を実行するユーザーを作成する。

README にある通りに実行…したら、上手くいかないので、以下のようにする。

ここで、src/conf.cfg を編集する。うちは、こんな感じ。ドメイン名は example.com ではなく、自分で取得したドメインに適宜置換すること。

編集を終えたら、以下を実行。

ここで、エラーが出なかったら、うまくインストールできている。が、mod_wsgi で実行すると、地味にエラーが出るので、以下のパッチを当てておく。

mod_wsgi をインストールする。

エラーや警告が出たら、何か足りないので、せっせと追加する。

さらに apache を設定する。まず、/etc/apache2/mods-availabe/mod_wsgi.load を作成する。

WSGIPythonHome や、WSGIPythonPath は実際にインストールされているディレクトリに適宜置換することをお忘れなく。

次に、/etc/apache2/sites-availabe に設定ファイルを作成する。ファイル名は仮に、newspipe.conf としておく。あと、ドメイン名は example.com ではなく、自分で取得したドメインに置き換えること。

見ておわかりの通り、WSGIScriptAlias に、/srv/newspipe/src/web/app.wsgi を指定してるけど、そんなファイルはない。つまり作成する必要がある。

ここまで辿り着いたら、あとは、

これでブラウザからアクセスして、ログイン画面が出れば完了!

Feedbin のインストール

結果的に、動作しなかったが、勿体ないので、記事は残しておく。

ニュースサイトの閲覧に、サーバー設置型であるニュースフィーダーの Fever を使っているのだが、ディスコンになってしまって、乗り換え先を探していたところ、オープンソースで公開されている Freebin がよさげだったので、Debian GNU/Linux 9 Stretch にインストールしてみた。Feedbin に月 $5 払えば、インストールなどいらないのだが、ドキュメントに書かれていない設定が多数あって、試行錯誤に丸一日費やしたので、どこかに残しておかないと勿体なかったというのもある。😁

まず、Stripe.comのアカウントが必要なので、サインアップする。

ダッシュボードの「テスト API キーの取得」に、公開可能キーとシークレットキーがあるので、これをいったんコピーしておく。

次に、サイドバーの Billing → 商品から、商品を 9 種類追加する。商品ごとの料金プランで、API ID に以下の値をひとつずつ設定する。面倒だが、Stripe.com に該当の API ID を持つ商品(料金プラン)がないとエラーになるので、頑張って設定する。

  1. basic-monthly
  2. basic-yearly
  3. basic-monthly-2
  4. basic-yearly-2
  5. basic-monthly-3
  6. basic-yearly-3
  7. free
  8. timed
  9. trial

設定が終わったら、インストール作業に入る。まず、Feedbin を実行するユーザーを作成する。

実行には、memcahedrediselasticsearchruby が必要なので、インストールする。ただし、システムデフォルトの ruby は、バージョンが古い (2.3) ので、rvm から必要なバージョンを導入しなくてはならない。(無論、rbenv から導入してもよい)

rvm グループにユーザーを追加しておく。

前提となるツール/ライブラリ群をインストールする。

elsticsearch は、java で書かれているので、java をインストールする。折角なので、最新版を入れる。

elasticsearch 本体をインストールする。

/etc/default/elasticsearch を以下のように編集して、再起動。

次に、bundle をインストールする。

camo という、イメージプロキシの実行に必要なので、node.js をインストールする。

camo をインストールする。

/lib/systemd/system/camo.service を作成する。

camo サービスを有効にして、起動する。

Feedbin 本体をインストールする。

.env ファイルを編集する。

PostgreSQL のユーザーを作成する。

データベースを作成する。

Refresher をインストールする。

Image フィーダーをインストールする。

ログディレクトリを作成する。

Feedbin 本体起動用スクリプト /usr/local/bin/startfeedbin を作成する。

/lib/systemd/system/feedbin.service を作成する。

Image フィーダー起動用スクリプト /usr/local/bin/startimage を作成

/lib/systemd/system/image.service を作成する。

サービスを有効化して、起動する。

あとは、Web サーバーに http://localhost:9191 を参照するリバースプロキシを設定して、ブラウザからアクセスすれば、ログイン画面が出る。

ユーザー登録をすませたら、試用期間中になるので、データベースを直接書き換えて、契約済みにしておく。

これで後は読むだけ…とか思ってたら、フィードが更新されない…ググっても解決しないので、諦めた。

小槌をインストールしてみた

サーバーインストール型の家計簿があるのを見つけて、インストールしてみたので、手順を備忘録として残しておく。家計簿ソフトの名前は小槌 (GitHub リポジトリ)

まず、node.js をインストール

続けて、ruby その他をインストール

MySQL/MariaDB のライブラリをインストール

または、

Debian 9 stretch デフォルトの gem はバージョンが低いので、アップデートする。

Bundler をインストール

GitHub から、ソースをクローン。

Bundle を使って、必要なモジュールをインストール

database.yml を修正

hosting.rb を修正

MySQL/MariaDB でデータベースとユーザーを作成する。

テーブルの作成、アセットのコンパイルを行う。

ファイル/ディレクトリのオーナーを変更

Passenger をインストールする

Apache のホストを設定して、再起動。

Apache の設定は、

を忘れずに!

Pydio Cells の隠し仕様

ファイル共有サーバーソフト、Pydio が、内容を一新、Go でスクラッチから書き直されて、Pydio Cells となった。

最近になって、更新のための時間が取れたので、インストールしてみた。ところ、このブログも乗っかってる専鯖上の VM には問題なくインストール完了。ところが、ストレージ目的で借りている VPS で、所謂ヌルポインタエラーが出た。フォーラムで質問しても解決しなかったが、うまくいったケースとそうでないケースを見比べて違いを埋めていった結果、Pydio Cells は、プライベート IP アドレスがないとセグメンテーションフォールトを起こす仕様になっていることがわかった。

ドキュメントのどこにも書いてないが、ソースではしっかりチェックされてて、確かにプライベートアドレスがないとエラーになる箇所があった。ところがそのエラーをチェックせずに実行を継続しているので所謂ぬるぽになっている。明らかなバグ。フォーラムで報告しておいた。

[2019/03/15 追記] バージョン 1.4 でこの問題が解決されていることを確認しました。

I/O Flood 最高!

突然、このブログを含むサーバー群にアクセスできなくなった。VM を実行しているホスト自体が落ちたようだ。

そこで、サポートに連絡したら、一時間かからずに復旧してくれた。何でもサーバーのマザーボードが壊れたらしい。

新しいマシンにディスクを移動して、設定を調整した上でブート、疎通確認までしてくれた。マネージドでもないのに。しかも、何気に CPU が、Xeon L5520 (4コア8スレッド) デュアルから、Xeon L5639 (6コア12スレッド) デュアルにアップグレードされている。どうやら同型機は売り切れていたらしい。追加料金は一切なし。

やっぱ、専用サーバーを借りるなら、I/O Flood に限る!との思いを新たにした。ありがとう!I/O Flood

 

Twitter links powered by Tweet This v1.8.3, a WordPress plugin for Twitter.