この度、AWSに買収されたCloud9のサービスが終了となりますので、今まで構築してきたデータを移行する先として、AWSではなく自宅サーバー(CentOS 7)にCloud9をインストールして、これまでと同じように利用できる環境を構築したいと思います。
Cloud9をインストール
事前準備
Cloud9を動作させるには、PythonやらNode.jsやら諸々必要になります。
以下の参考サイトを一部引用して準備を進めていきます。
まず、wgetやNode.jsやらは割愛させていただきます。
Pythonについては、CentOS 7にデフォルトで入っているバージョン2.7.5をそのまま使用するものとします。
著者の環境では、全てインストール済みで揃っていると思ったのですが、いざインストールしてみるとglibc-staticが不足していました。
yum install glibc-static
事前準備の注意点はこれくらいでしょうか。
SDKインストール
それでは本題のCloud9 SDKをCentOS 7にインストールして行きましょう。
上記の参考サイトでは、インストールする前に一般ユーザーに切り替えたり、言語設定をしていましたが、結果的にしなくても動いたので、今回は割愛させていただきます。
Cloud9のインストール手順は公式のGitHubそのままで間違いないです。
インストール中はしばらく時間がかかります。
完了したらファイアウォールにもおまじないをかけておきましょう。
Cloud9の起動
ここで少しハマってしまいました。
公式サイトでは、
node server.js
で起動するよ〜なんて言っています。
確かに間違いではないのですが、自分が思った通りに動作させたい場合は、オプション設定してあげる必要があります。
最終的にはこのようになりました。
node ~/c9sdk/server.js -l 0.0.0.0 -p 8080 -a username:password -w /var/www/html/
永続化したい場合は、foreverを入れてnode
の箇所をforever start
に変更すると良いでしょう。
オプションの解説
-l 0.0.0.0
ハマった原因がまさにコレです!
これを記述してあげないと、他の端末からアクセスできませんでした。
原因は詳しく調べていませんが、デフォルトではCloud9をインストールしているサーバーのローカルIPではなく、自分自身、つまり127.0.0.1(localhost)からしかアクセスできないのだと思います。(解釈が間違っていたらごめんなさい)
-p 8080
ポート指定です。
デフォルトでは8181になっています。
8080は他にも使われるかもしれませんのでお好みで。
-a username:password
Cloud9にhtpasswdをかけます。
セキュリティのために設定しておきましょう。
username
にお好みのユーザー名。
半角コロン[:]で挟んで、password
にお好みのパスワード。
-w /var/www/html/
これが一番重要です。
このオプションは、ワークスペースのディレクトリパスを設定します。
上記の例はApacheのデフォルトパスを指定していますが、使用するサーバーの種類やワークスペースを別の場所に設定する場合は、このオプションの値を変更してあげましょう。
Cloud9インストールまとめ
Cloud9が起動せずにハマって、Node.jsの[-l
]オプションで解決する方法を見つけた際に、偶然インストールの全体的な手順も掲載されていたのでまとめてみました。
# 必要なライブラリ取得
yum install -y glibc-static
yum install -y epel-release
yum install -y nodejs
yum install -y npm --enablerepo=epel# Cloud9 SDKをインストール
cd ~
git clone c9sdk
cd c9sdk
scripts/install-sdk.sh# ファイアウォール設定
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --reload# 確認
firewall-cmd --list-all
public (default, active)
interfaces: eth0
sources:
services: dhcpv6-client http https mysql ssh
ports: 8080/tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:# サーバー起動
node ~/c9sdk/server.js -l 0.0.0.0 -p 8080 -a username:password -w /var/www/html/
引用:CentOS – さくらVPS CentOS7でCloud9が起動できない|teratail以上になります。
次回はOSが起動したタイミングでサーバを起動する方法をご紹介する予定です。
- Original:https://minory.org/cloud9-centos7-install.html
- Source:Minory
- Author:管理者
Amazonベストセラー
Now loading...