開発管理サーバを構築

Redmine や Git などを組み合わせた開発管理環境を構築した、そのときのメモです。最初は、Mac OS X Lion Server 上にインストールを試みましたが、LLVMコンパイラ関連でつまづいたり、その解決も興味なくはありませんが、CentOS 上(Mac OS X Lion 上の VirtualBox 利用)で構築してみました。

VirtualBox

Mac OS X Server 上に VirtualBox をインストール。

CentOS 6.2 インストールほか

インストール

Web Server ベースで、MySQL データベース、開発ツールなどを加えてインストール。過不足は後で調整することに。

ネットワーク

固定 IP アドレスにするために、以下を設定。

/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
HWADDR="xx:xx:xx:xx:xx:xx"
NM_CONTROLLED="yes"
ONBOOT="yes"
BOOTPROTO="static"
IPADDR="192.168.xx.21"
NETMASK="255.255.255.0"
GATEWAY="192.168.xx.1"
BROADCAST="192.168.xx.255"
/etc/resolv.conf
nameserver 192.168.xx.1

sshd を確認

# chkconfig --list sshd
sshd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off

これで、後は 192.168.xx.21 に ssh すれば操作できる。

VirtualBox を Headless で起動

Mac OS X Lion Server 起動時に裏で VirtualBox & CentOS を立ち上げたいので、launchd を使用して VBoxHeadless を起動することにしました。パラメータで渡している “Dev Server” はバーチャルマシン名です。

【注意】起動のときのタイミングが悪いらしく、うまく起動しないことがあり、まだまだ手を加えることが必要です。

/Library/LaunchDaemons/jp.balunsoftware.DevServer.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
        "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0">
<dict>
        <key>Label</key>
        <string>jp.balunsoftware.DevServer</string>
        <key>ProgramArguments</key>
        <array>
                <string>/Applications/VirtualBox.app/Contents/MacOS/VBoxHeadless</string>
                <string>--startvm</string>
		<string>Dev Server</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
	<key>UserName</key>
	<string>administrator</string>
	<key>GroupName</key>
	<string>staff</string>
	<key>KeepAlive</key>
	<false/>
</dict>
</plist>

シャットダウン

ACPI のパワーオフでシャットダウン処理が行われますので、それを使ってシャットダウンします。ついでに、シャットダウンを待つために、以下のようなスクリプトを作成しました。

#!/bin/sh
########
# Stop Dev Server using ACPI Power Button
/Applications/VirtualBox.app/Contents/MacOS/VBoxManage controlvm "Dev Server" acpipowerbutton

########
# Wait until stopped
while [ `ps -ef | grep "VBoxHeadless --startvm Dev Server" | grep "VirtualBox" | wc -l` == 1 ]
do
        sleep 1
done

確認バージョン

  • CentOS 6.2
  • VirtualBox for Mac 4.1.8
  • Mac OS X バージョン 10.7.3
カテゴリー: 開発管理サーバ タグ: パーマリンク

コメントは停止中です。