OSXでRedisをサービスとしてインストール/起動する

OSX(10.8)でRedisキャッシュサーバをサービスとして裏で起動させる方法を紹介する。

Redisサーバをインストール

普通にbrew installするだけ。

sudo brew install redis

Redisサーバの起動

redis-server

ただ、これだとCTRL+Cを押したらサーバが終了してしまう。サービスとして裏で動かし続ける場合には適さない。そこで次の方法をとる。

Redisサーバをサービス登録

sudo vi /Library/LaunchDaemons/io.redis.redis-server.plist

開いたファイルに以下をまるっとペースト。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
        <key>Label</key>
        <string>io.redis.redis-server</string>
        <key>ProgramArguments</key>
        <array>
                <string>/usr/local/bin/redis-server</string>
                <string>/usr/local/etc/redis.conf</string>
        </array>
        <key>RunAtLoad</key>
        <true></true>
</dict>
</plist>

サービスを登録

sudo launchctl load /Library/LaunchDaemons/io.redis.redis-server.plist

サービス化したRedisを起動

sudo launchctl start io.redis.redis-server

Redisの終了

sudo launchctl stop io.redis.redis-server

これで、サービスとしてRedisを起動できるようになっただけでなく、OSXの起動時にRedisが自動起動する。

参考: http://www.js2node.com/redis-io/install-redis-io-2-4-17-on-mac-osx-as-service