LoginSignup
7
10

More than 5 years have passed since last update.

CentOS7にDevHubを入れてみた。

Last updated at Posted at 2015-10-04

CentOS7にDevHubをインストールした時の記録です。
だいたいOSのインストールから始めて1時間程度です。
CentOS7が初めてだったので、ネットワーク関連の設定から始まります。
なお、sudoしてないのは、ぜんぶrootで実行しているからです。(良くない。)

1. CentOS7の初期設定

CentOS7をインストールしたら、とりあえずネットワークやfirewall、そしてSELinuxの設定を行います。

1.1. ネットワーク設定

とりあえずホスト名を表示してみます。

nmcli g hostname

必要であればホスト名を変更します。

nmcli g hostname hogehoge

次にネットワークインタフェースの一覧を表示してみます。

nmcli c show

さらに詳細を表示してみます。

nmcli —fields connection c show eth0

connection.autoconnectnoであれば、OS起動時に自動的にネットワークが起動しないので、yesに変更します。

nmcli c mod eth0 connection.autoconnect yes

その他、ネットワークインタフェースの情報(ここではIPv4関連)を表示し内容を確認します。

nmcli —fields ipv4 c show eth0
ip a show

変更が必要なものがあれば、変更します。

1.2. firewallの設定

まずは、現状の稼働状態を表示します。

systemctl status firewalld

そして、設定内容を確認します。

firewall-cmd —list-all

おそらくhttp(80番ポート)は開いていないので、開けます。

firewall-cmd —permanent —add-service=http

この設定だと、永続的(一時的ではない)設定が行われますが、現時点では反映されていない(80番は開いていない)ので、反映します。

firewall-cmd —reload

1.3. SELinuxの設定

MongoDBの本家に「ちゃんと設定するかdisabledにしろ」的なことが書いてあったので、今回はdisabledにします。

vi /etc/selinux/config

SELINUX=enforcingSELINUX=disabledに変更すると、再起動後にSELinuxが止まります。

2. 前提条件のインストール

DevHubの動作に必要なミドルウェアなどをインストールします。yumを使って手っ取り早くやってしまいます。

2.1. MongoDBのインストール

MongoDBは標準のリポジトリにはないので、mongodb-orgのリポジトリを追加します。

vi /etc/yum.repos.d/mongodb-org-3.0.repo

内容は下記の通りです。

mongodb-org-3.0.repo
[mongodb-org-3.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0/x86_64/
gpgcheck=0
enabled=1

yumでMongoDBをインストールします。

yum install mongodb-org

OSごと再起動して、MongoDBが起動することを確認します。

reboot

mongodbの状態は下記で確認できます。

systemctl status mongod

2.2. node.jsとgitのインストール

node.jsが標準のリポジトリにないので、EPELを使えるようにしてしまいます。

yum install epel-release

yumを使ってnode.js、npm、gitをインストールします。

yum install nodejs npm git

3. DevHubのインストール

DevHubをインストールします。ついでに、OS起動時に自動的に起動するようにします。

3.1. DevHubのインストール

DevHubを配置する場所に移動します。今回は/srvを使用してしまいます。

cd /srv

GitHubからクローンします。

git clone https://github.com/volpe28v/DevHub.git

必要なライブラリをnpmでインストールします。

cd DevHub
npm install

試しに起動してみます。firewallが動作していて80番ポートしか開けていないので、80番で待ち受けるようにします。

node app.js -p 80

起動するまで結構な時間がかかるようですが、しばらく経つとブラウザでアクセスできるようになります。

3.2. 自動起動にする

node.jsのアプリケーションをdaemon化するforeverをインストールします。一緒に、foreverのinit.d用スクリプトを作成するinitd-foreverもインストールします。

npm install -g forever initd-forever

foreverのinit.d用スクリプトを作成します。

initd-forever -a /srv/DevHub/app.js -n devhub

init.dから起動した場合も80番ポートで待ち受けるように、生成されたスクリプトを修正します。

vi devhub

$foreverApp start 〜の最後に-p 80を付けます。
そして、修正したスクリプトをinit.dへ移動し、実行できるようにします。

cp devhub /etc/init.d
chmod a+x /etc/init.d/devhub

OS起動時に自動的に起動するように設定します。

chkconfig devhub on

OSを再起動してみます。

reboot

DevHubが使用できれば、完成です。

4. 参考情報

下記の情報を参考にさせていただきました。

7
10
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
10