akishin999の日記

調べた事などを書いて行きます。

CentOS 7 に Crowi をインストールする

手元の CentOS 7 に Markdown で書ける Wiki「Crowi」をインストールしてみました。Crowi http://site.crowi.wiki/crowi/crowi: Crowi - Wiki https://github.com/crowi/crowi Node.js のインストール Crowi は Node.js 製なので、まずは Node.js をインスト…

Qiita に書いた記事をエクスポートするツールを作ってみた

会社で使っている Qiita Team に投稿した記事を画像ファイルも一緒にエクスポートしたくて書いたスクリプトがあったのですが、せっかくなのでコードを整理して gem にして公開してみました。https://rubygems.org/gems/qiita-export以下でインストールできま…

ngx_set_misc モジュールを組み込んだ Nginx の RPM を作成する

Nginx に URI エンコード&デコードや Base64 エンコード&デコードなどの機能を追加する ngx_set_misc モジュールを組み込んだ RPM を作成してみたのでメモ。Set Misc | NGINX http://mogile.web.fc2.com/nginx_wiki/modules/set_misc.htmlopenresty/set-misc…

vim-pukiwiki を更新したら保存ができなくなった

Vim

普段技術的なメモを取るのに Mac 上で動いてる Apache の上で PukiWiki を動かし、vim-pukiwiki を使って Vim から更新しています。syngan/vim-pukiwiki https://github.com/syngan/vim-pukiwikiwiki ディレクトリの実体を DropBox 上に置くようにすれば複数…

Box-Cutter で CentOS 7.1 の Box を作成する

久しぶりに Packer で CentOS 7 の Box を作成しようと思い、以前も使った Box-Cutter を使おうとしたらちょっと使い方が変わっていたのでメモ。 環境は Windows 7 64bit, Packer のバージョンは 0.8.6 です。まず、そもそも Box-Cutter の CentOS 用リポジ…

.tmux.conf 内で tmux のバージョン判定

普段使っている tmux のバージョンが環境毎に違うので、.tmux.conf 内で tmux のバージョンに応じて設定を切り替える方法を調べたのでメモ。手元の Ubuntu 14.04 では tmux 1.8、Mac の方は 2.1 なのですが、以下のように設定したら同じ .tmux.conf でどちら…

Perl から Errbit にエラーを登録する

Perl から Errbit にデータを登録するところまで試してみたのでメモ。Errbit のリポジトリ見ると既に v3 の JSON API も使えるみたいですが、手元で立てていたバージョンにはまだ v3 の API は無かったようなので、取り敢えず以下の XML API を使ってみまし…

MySQL のトリガからシェルスクリプトを実行する

久々の更新。 MySQL の特定のテーブルのデータ変更を検知して実行したい処理があったので、トリガを使ってなんとか出来ないか調べてみました。 system 関数を使う 最初 system 関数(\!) を使ってできそうな以下の記事を見つけました。MySQL :: Re: Can trigg…

Chart.js で凡例を表示する

Chart.js の円グラフで凡例を表示してみました。 ちなみに試したのは Chart.js の Version 1.0.1 beta-2 です。 <html> <head> <meta charset="utf-8"> <title>Chart.jsで凡例付き円グラフ</title> <script src="Chart.min.js"></script> <style> .center { margin-left: auto; margin-right: auto; text-align: center; } #pieLegend { padding: 10…</meta></head></html>

Packer 用のテンプレート集 Box-Cutter を使ってみる

以前試した Packer 用のテンプレート misheska/basebox-packer が Box-Cutter に移動してしまい、若干使い方も変わったようなので試してみました。 packer 自体のインストールは割愛。Box-Cutter https://github.com/box-cutter上記の Organization アカウン…

Capistrano の db ロール

最近 Capistrano3 を触っていてハマったので忘れないようにメモ。昨日身に染みて分かったんですが、Capistrano での 「role: :db」って「RDBMS が動作しているサーバ」ではなく、あくまで「rake db:migrate を実行するサーバ」に対して指定するためのロール…

Capistrano3 でデフォルトの環境を指定する

Capistrano3 からは、task の実行時にステージを指定しないと以下のようなメッセージが出るようになりました。 # cap deploy Stage not set, please call something such as `cap production deploy`, where production is a stage you have defined. capist…

Migration ファイル生成時にカラムサイズやインデックス生成を指定できる

Rails の generator でマイグレーションファイルを生成する時に、カラムのサイズやインデックス追加を指定する事が出来るんですね。 恥ずかしながら今日まで知りませんでした。例えば以下のような感じで生成すると % bundle exec rails g scaffold note titl…

MariaDB 10.0.10 と Spider ストレージエンジンを使ってみる

MySQL の Sharding 用ストレージエンジンである Spider を試してみました。 公式のバイナリに同梱されている MariaDB 10.0.10 を使っています。試した環境は CentOS 6.5 x86_64 です。 MariaDB のインストール まずは MariaDB をインストールするために、yum…

RequestBin をインストールしてみる

発行された URL に対して送信された HTTP リクエストの内容を確認することが出来る Webサービス RequestBin ですが、ソースコードも MIT ライセンスで公開されている ようなので、今回は自前のサーバに立ててみました。 構築した環境は CentOS 6.5 x86_64 に…

Ruby から Sentry を使う

前回インストールした Sentry に Ruby からイベントを登録してみます。 Ruby から Sentry を使うには、プロジェクトの設定画面の Ruby のところにも書いてあるように sentry-raven という gem を使います。getsentry/raven-ruby https://github.com/getsentr…

Sentry をインストール

商用サービスもあるオープンソースのイベントログ収集ツール Sentry をインストールしてみたのでメモ。getsentry/sentry https://github.com/getsentry/sentryAirbrake やオープンソースの Errbit 辺りと同じ系統のサービスな感じです。インストールした環境…

Packer で Vagrant の Box を作る

テンプレートを自分で作るのがどうにも面倒に感じてなかなか手を出せずにいた Packer ですが、調べてみたら結構テンプレートを公開してくれている方がいるようです。misheska/basebox-packer https://github.com/misheska/basebox-packershiguredo/packer-te…

Ruby から Windows の共有フォルダにアクセスする

Linux 上で Samba マウントせずに Windows の共有フォルダにアクセスしたかったので、Ruby の sambal というライブラリを使ってみました。johnae/sambal https://github.com/johnae/sambal試した環境は以下です。 CentOS 6.4 / 6.5(どちらも x86_64) Ruby 2.…

CentOS 6.5 に kippo をインストールしてみる

digitalOceanクラウド上に安く簡単にkippoハニーポットを構築する | 徳丸浩の日記 http://blog.tokumaru.org/2014/01/digitaloceankippo.htmlsshハニーポットをkippoで作ってみる - ろば電子が詰まっている http://d.hatena.ne.jp/ozuma/20130829/1377703104…

Vagrant 1.4.0 で private_network を指定しているとエラーになる件

Vagrant 1.4.0 で追加された Docker provisioner などを試してみたいと思い、勇んでアップデートしてみたところ vagrant up でエラー。 ・ ・ ・ [default] Configuring and enabling network interfaces... The following SSH command responded with a non…

CentOS 6.4 で Docker 0.7 を使ってみる

Docker がバージョン 0.7 から RedHat 系 OS に正式に対応した、という事なのでインストールして軽く触ってみました。Requirements and Installation on Red Hat Enterprise Linux / CentOS - Docker Documentation http://docs.docker.io/en/latest/install…

CentOS 6.5 へアップグレード

CentOS 6.5 が出たみたいです。RHEL 6.5互換となるLinuxディストリビューション「CentOS 6.5」リリース | SourceForge.JP Magazine http://sourceforge.jp/magazine/13/12/04/143000Manuals/ReleaseNotes/CentOS6.5 - CentOS Wiki http://wiki.centos.org/Ma…

ファイルやディレクトリのパーミッションを8進数表記で確認する

ファイルやディレクトリのパーミッションを確認したい場合、ls コマンドではアルファベットでしか確認できませんが、stat コマンドを使う事で8進数表記でパーミッションを確認することが出来ます。 % stat -c %a /home/akishin 755 % stat -c %a /tmp 1777 …

後置の rescue では例外クラスを指定できない

タイトルの通りなんですが、知らなくてちょっと悩んだので忘れないようにメモ。require 時の LoadError を無視したくて以下のようにしたところ、何度試しても rescue 出来ませんでした。 require 'hoge' rescue LoadError #=> cannot load such file -- hoge…

公式の yum リポジトリから MySQL をインストール

MySQL yum repositories | MySQL Server Blog http://mysqlserverteam.com/mysql-yum-repositories/こちらの記事で公式の yum リポジトリが公開されたのを見かけたので早速使ってみました。 OS は CentOS 6.4 x86_64 です。 リポジトリの追加 まずは yum リ…

Vim で英語を書く時に便利なプラグインいくつか

Vim

情けない事にいつまで経っても英語は苦手なままなのですが、プログラマたるもの、自分のプログラム内できちんとした名前を付けるためには避けて通る事は出来ません。 とはいえ、毎回毎回 Web で検索するのにも疲れてきたので、 Vim で英語を書いたり調べたり…

FakeFS でファイルアクセスをテストする

ファイルシステムの操作に関連するクラスのモックオブジェクトを提供するライブラリ「FakeFS」を使ってみたので、使い方をメモしておきます。defunkt/fakefs https://github.com/defunkt/fakefs インストール % gem install fakefs --no-rdoc --no-ri Rails …

lightline.vim で Ricty を使う

Vim

vim のステータスライン用のプラグインを vim-powerline から lightline.vim に変更してみました。 ついでにフォントも Ricty に powerline 用パッチを当てたものに変更したのでやり方をメモ。作業環境は Ubuntu 13.04 32bit です。 Ricty をビルドする Rict…

Ansible で標準のパス以外の場所に入れた Python を使用する

Ansible はデフォルトではリモートのホストに入っている標準の python を使用します。 これを virtualenv 環境など、標準のパス以外の場所の python を使いたい場合には、ansible_python_interpreter 変数で python インタプリタのパスを指定するようです。L…