Raspberry Pi Advent Calendar@15日目「Raspberry Piでブログを作ろう」

これはRaspberry Pi Advent Calendarの15日目の記事です。

qiita.com

www.adventar.org

はじめに

小型なのにLinuxが動くRaspberry Piを持っていると、WordPressのようなブログを動かしたくなる衝動に駆られた方はいらっしゃるのではないでしょうか。しかし、このRaspberry PiはLAMP環境を常時動かせるほどの能力はないため、WordPressを動かすのには難があります。そしてWordPress自体も動的にコンテンツを生成しているので重い重いと言われているのも事実。そこで私は静的コンテンツであればいけるのではないかと考えました。今流行の静的サイトジェネレータってヤツを使ってみましょう。今回は私も含めて初めて挑む内容があるのでそのような方でも理解いただけるように冗長な記述を多く取り入れています。予めご了承下さい。

続きを読む Raspberry Pi Advent Calendar@15日目「Raspberry Piでブログを作ろう」

IDCFクラウドのオブジェクトストレージをCyberDuckで使う話

IDCFクラウドで提供されているオブジェクトストレージは、Amazon S3と互換のAPIを用いられているため、CyberDuckを使用してファイルの操作を行うことができます。

 

図解にすると次の通り。(クリックで大きく表示)

idcf

対照表は次の通りです。

CyberDuck側の値 IDCFクラウド側の設定
サーバ エンドポイント
アクセスキーID API Key
シークレット API Secret
パス /バケット名(/を忘れずに)

CyberDuckのパスは「詳細設定」をクリックすると入力する欄が表示されます。

IDCFクラウド側のバケット名は一旦オブジェクトストレージの画面に戻り左側のメニューにある「オブジェクト」をクリックすると表示される自分で作成した「バケット」です。なければ各自追加してください。

ボクのTodoリストは間違っていない使い方かもしれない

リマインダーアプリはiCloudとかEvernoteなどかなりの数がありますが、自分はTrelloを使っています。看板方式のTodoリストは自分にしっくりきたのです。Todoリストなんてたくさんあるのですから自分にあったサービスとかアプリを使うのが一番です。

さて、他の方がtodoリストをどういう使い方をしているのかは分かりませんが、自分の使い方を話したところ面白い使い方をしていると突っ込まれたので調子に乗ってちょっとここに書いてみます。

これが自分のTrelloにあるTodoリストです。

スクリーンショット-2015-10-17-16.04

このようにします/してます/しましたの3つにリストを分けて管理しています。

自分が何かタスクを思い出したらとりあえず「します」に書いて忘れてしまう。すると今するべきことがひと目でわかるし、どれほどタスクが溜まっているのかが分かります。

次に作業を始めたらタスクを「します」から「してます」に移動します。これで現在作業中のタスクが分かります。例え作業途中に裏で流している動画の再生が終わってそのままニコ動で時間を潰して「あれ、今何やってたんだっけ」となっても思い出すのがとても容易です。そしてタスクを複数リストに突っ込むことができるのでダビングの合間に作業していても状況を把握することができます。

作業が終わったら「しました」に移動します。正直、終わったタスクを残すのはどうなのかとは薄々思っているのですが、「しました」には終わったタスクがたくさん入っているため達成感に浸ることができます。

 

余談ではありますが、この管理の仕方は極端な話、私が5歳の頃からしている手段になります。当時から私は家電が大好きで、親に近所のデオデオやベスト電器に連れて行ってもらった時にパンフレットを店員さんからもらってずっと読んでいました。(漢字とかはわからないので図と写真で満足していました。)

半年ぐらいになるとパンフレットが膨大な数になってしまい、親から「いるやつといらないやつに片付けなさい」と怒られるので仕分けするのですが、その時たまたまクレヨンしんちゃんでみさえがしんのすけにおもちゃを片付けるよう怒られた回があり、そこでしんのすけが取った手段が、「いる/いらない/ど~しよ~の3つに分ける」という方法を使って片付けていたのです。

真似してパンフレットを片付けていたら普通に整理することができ、この方法をずっとしていたのですが、数年前から「これはToDoリストにも応用できるのでは」と思い、Trelloと一緒に使ってみたら思いの外便利でこのまま使っているのです。ただそれだけです。

 

というわけで、頭のなかがタスクでゴチャゴチャになっている方はお試しください。

niconicoの投稿動画ページからコメントを非表示にするやつ作った

ここに黒歴史があるじゃろ?これを・・・

cap_nico1

こうじゃ!

cap_nico2

と、いうように、黒歴史から目を背けながら動画を抹消したい方向けにStylish用UserStyleをご用意しました。とはいっても中身は5行の簡単なものです。

続きを読む niconicoの投稿動画ページからコメントを非表示にするやつ作った

H2Oの設定で手こずった点

結合しても証明書のエラーが出る

h2oはnginxのようにcat 証明書 CA証明書 中間CA証明書 > ssl.crtという感じで証明書を結合しなければなりません。ここで結合すると「証明書がなんかおかしいです」といったエラーが起こりSSLが使用できないという事案が起こりました。

とりあえず問題の結合された証明書を見てみると…

これはダメですわ。ちゃんと改行しましょうね。

これで正しく使用できるようになりました。

ApacheのようにSystemd(かUpstart)から起動できるようにする

ApacheやNginxではSystemdやUpstartから起動するのですが、h2oでは同じようなことができないようなので、自分でスクリプトを書く必要があります。
大学にある自分のサーバー(VineLinux)はh2oをUpstartを用いてデーモン化しています。
書いたら設定をリロードして使えるようにします。ここらへんを参照してください。

このように書けばOKかと思います。しかしUpstartはUbuntu 15.04からSystemdによって置換されてしまうのでこの手段は使えません。おそらくUbuntu 16.04 LTSにアップグレードするときに壁にぶつかるのではないでしょうか。
SystemdのUnitの書き方は次のような感じです。このUnitは現在動いている自宅サーバで使用しています。(おそらく間違えているかと思います。詳しい方教えてください)

systemctl enable h2o.serviceで有効化したらsystemctl start h2o.serviceで使えるようになりますね。
※h2o.confでpidなどを正しく指定しないとこのUnitも動かないです。

サーバの再構築をした

今までWordPressなどが動いている自宅サーバーがとてもとても重いので、一念発起してWebサーバの再構築をしました。

今までの環境(~2015/7)

  • CentOS 6.6 x64(VMware上で稼働)
  • MariaDB
  • PHP 5.6.7
  • Apache 2.4

これからの環境(2015/8~)

  • Ubuntu 14.04 x64(Hyper-V上で稼働)
  • Percona Server
  • HHVM 5.6.99
  • H2O

OSから何まで変わっています。

参考になったサイト

Percona Server

[Ubuntu] aptで、Percona Server(MySQL)を入れる方法
尋常では無いほど詳しく書かれています。

HHVM

Prebuilt packages on Ubuntu 14.04
PHP5よりも速そうなHHVMを使いました。Facebookが作ったと聞くだけですごく速そうです。
service hhvm startと入力したらFastCGIサーバが稼働します。
なお、エイリアスが設定されているのでhhvmコマンド以外にもphpコマンドも使えます。php -vと入れてもバージョン情報が出力されます。

h2oのインストールと設定

H2OでPHP(がちょっとだけ動くまで)

続、PHPとH2OをfastCGIでつなぐ話、暗黒道

新、PHPとH2OをfastCGIでつなぐ話、解決編

うずらさんによるこちらの記事が役に立つのではないでしょうか。

なお、h2oはApacheやnginxのようにUpstart(またはSystemd)から動いてくれないので自分でスクリプトを用意する必要があります。ここに関しては後で書こうと思います。