Results for tag "git"

node.jsをevennodeにデプロイしよう

evennodeはnode.js専用のPaaSなので、使い方は非常に簡単。
ほとんどブラウザから設定できるので迷わないとは思うが、一応使い方を説明しておく。
ローカル環境はCentOS 6.5で、gitはインストール済み、node.jsのソースコードも作成済みとする。
evennodeのサインアップやログインはHPから行える。
ここではサインアップしてログイン後のコントロールパネルからアプリの作成手順を説明する。
 

アプリの作成

コントロールパネルの「APPS」タブを開き、「CREATE NEW APP」をクリックする。
evennode.01
 

プランの選択

好きなプランを選ぶ。とりあえずお試しならFreeで良いだろう。
evennode.02
 

node.jsの設定

Domainでサブドメイン名を設定する。これは他のevennodeのアプリとかぶらない名前にする必要がある。
Server locationはEuropa(Ireland)かUnited States(lowa)かを選べる。(どちらが日本から速いとかは調べていない)
Custom Domainは独自ドメインを使う場合に設定する。
Select app’s platformはNode.jsかio.jsかを選べる。普通はNode.jsで良いだろう。
Node.js varsionはv0.8.6~最新まで指定可能。
Startup commandは自動かカスタムかを選べる。
以上でアプリが作られる。
evennode.03
 

アプリの管理

さらにアプリの詳細設定を行う。
APPタブで作ったアプリをクリックする。
evennode.04
 

Public keysの管理

Manage public keysをクリックする。
evennode.05
 

Public keysの設定

Public keys for GitにGit用の公開鍵を設定してSaveボタンを押す。
evennode.06
 

環境変数の管理

環境変数の設定が必要な場合は、Environment varsをクリックする。
evennode.07
 

環境変数の設定

Nameに環境変数名、Valueに環境変数の値を入れて、Saveボタンを押す。
evennode.08
以上でevennodeでの作業は終了。
 

app.jsの作成

ここからローカル環境での作業になる。
参考文献:Node.js Hello World app
evennodeではどうもルートディレクトリのapp.jsを起動するようになっているようだ。
(package.jsonの”main”や”scripts”: {“start”}で別のソースコードを起動するよう記述しても認識されなかった)
app.js以外から起動したい場合はapp.js内でrequireで呼ぶ。
例えば、server/app.jsを起動したい場合は、ルートディレクトリにapp.jsを作成して下記を記述する。

require('./server/app.js');

 

Gitのリモートリポジトリを登録する

git remote add evennode git@evennode.com:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.git

リポジトリのアドレスはevennodeのコントロールパネルの「Manage app > Git deployment > Repository」に記述してある。
 

デプロイする

gitでプッシュしてデプロイ完了。

git push evennode master

 

その他Tips:bower installが起動しない問題

bower installを起動する術がないので、bower installでインストールされるべきモジュール群もコミットしておく。
 

その他Tips:SSLの設定方法

設定方法は提供されていない。
support@evennode.com にメールしてSSLを設定したい旨を伝えると、SSL certificateとprivate keyを送れと返事が返ってくるので、送ると設定してくれる。
メールは英語でやり取りできる。
 

その他Tips:アプリの削除方法

APPSから削除したいアプリを選び、Settings > DELETE APP から削除できる。
evennode.09


0

AWS EC2にnode.jsサーバーを構築しよう

環境は以下の通り。
・サーバーはAWS EC2
・サーバーのOSはAMI Linux
・ローカルのOSはCentOS 6.5
・ローカルにはnode.jsサーバーのソースコードがあるものとする

説明内容は以下の通り。
・サーバーにnode.jsをインストール
・サーバーにgitサーバーを立てる
・サーバーにnode.jsサーバーのソースコードをデプロイする
・サーバーのnode.jsサーバーを起動する

AWS EC2でのサーバー構築方法はsimtterができるまで(サーバー取得と設定)を参照して欲しい。
EC2からのリモートコントロールにはTera Termを使う。
Tera Termの使い方はchat.acができるまで(statusnetをインストール)を参照して欲しい。
ただし、今回インストールするOSはubuntuではなくAMI Linuxとする。
AMI Linuxのユーザー名はec2-userになる。

では、OSまで入った前提で以降を説明する。
 

node.jsをインストール

参考文献:
node.jsをyumでインストールする(centos6.5)
Amazon Linux AMI に関するよくある質問
Tera Termから下記コマンド実行。

sudo yum install nodejs npm --enablerepo=epel

 

gitサーバーを立てる

参考文献:自宅のCentOSにGitサーバを構築してみた
Tera Termから下記コマンド実行。

sudo yum install git git-deamon git-all xinetd
sudo chkconfig xinetd on
sudo vi /etc/xinetd.d/git-daemon

 
内容は

service git
{
        disable         = no
        socket_type     = stream
        wait            = no
        user            = nobody
        server          = /usr/libexec/git-core/git-daemon
        server_args     = --base-path=/home --export-all --user-path=ec2-user --syslog --inetd --verbose
        log_on_failure  += USERID
}

 
xinetd を起動

sudo service xinetd start

 
リポジトリ作成

cd ~
mkdir test.git
cd test.git
git --bare init --shared

 
gitグループを作成してユーザをそのグループに追加

sudo groupadd git
sudo usermod -G wheel,git ec2-user
sudo chown -R root:git ~/test.git

 

node.jsサーバーをデプロイする

ローカルのgitにはすでに何らかのソースコードをコミットしているものとする。
ローカルから下記コマンドを実行する。
 
リモートリポジトリの登録

git remote add origin ssh://ec2-user@[Public IP]:/~/test.git

※ [Public IP]はAWS EC2に割り当てられたIPアドレスを指定する。独自ドメインを設定している場合はドメイン名でも良い。
※ ssh 用の鍵ペアはTera Termでの通信で使う鍵と同じである。
 
リモートリポジトリに push

git push origin master

 

node.jsサーバーを起動する

サーバーで下記コマンドを実行する。
 
クローン作成

cd ~
git clone test.git

 
node.jsサーバー起動

cd test
node app.js

※ app.jsは自分が起動したいソースファイルに適宜読み替えること。


0

WordPressを無料レンタルサーバーCAPNIXに移転してみた

AWS Amazon EC2の無料枠期間も残すところ、あと1ヶ月を切った。
Amazon EC2は自由度が高くて、IaaSって素晴らしい!と思わせてくれた。
StatusNetを始め、WordPress、git、Redmine、Node.jsにいたるまで色んなものを入れれた。
無料枠で使うにはとっても素敵なサービスなんだけど、有料となると、Microインスタンスでさえ、月1500円かかるのはちょっと高い。
Microインスタンスだと実質WordPress入れるのが精一杯。
他のを欲張って入れるとCPUを使い切って、MySQLがよく落ちるようになってしまった。
これはもしかしたら、私の環境がUbuntu+Apache2からかも知れないが。
Amazon AMI+nginxが速いらしいんだけど。
どっちにしろ、月1500円払うほど大したことやってないので、せめてブログだけでも、安いところに移転できないかと移転先を探した。
国内の無料レンタルサーバーのxreaも良いかなあと思ったけど、広告入るのも嫌だなあと。
そして、海外の無料レンタルサーバーであるCAPNIXを使ってみることにした。
ディスク容量10GB、転送量100GB/月まで、PHPとMySQLが動いて、広告もなし。
いったい何で儲けているのか怪しいぐらいだけど、とりあえず試しに使ってみた。
登録方法は解説する必要もないぐらいに超簡単だった。
(名前とか住所とかメールアドレスとかよくある入力項目を入力して、メールアドレスに招待メールが送られてくるので、メール内のリンクをクリックすれば完了)
コントロールパネルは英語かフランス語しか対応していないが、この手のサービスに慣れた人なら分かるだろう。

今表示しているこのブログはCAPNIX上で動いてるんだけど、全く遅延もしないし、今のところ、問題なし。


0

ubuntuにgitの共有リポジトリを作ろう

ubuntuにgitの共有リポジトリを作ったので、備忘録として手順を記す。
ついでにクライアント(Windows)からTortoiseGitを使ってプッシュまでの方法、
redmineでのリポジトリの表示方法まで記す。

まずはTera Termを使って、Amazon EC2のubuntuに繋ぐ。
Tera Termの使い方は過去記事参照されたし。
chat.acができるまで(statusnetをインストール)
以下、Tera Termからのコマンド入力。

ubuntu@ip-x-x-x-x:~$ sudo apt-get install git-core

gitをインストール。

次に共有リポジトリを作るのだが、ディレクトリはどこでも良いみたいだ。
私はユーザーディレクトリの下に作っておいた。

ubuntu@ip-x-x-x-x:~$ mkdir git

git用のディレクトリを作成。
(sudoではなくユーザー権限でコマンド入力すること。あとでクライアントからユーザー権限でアクセスするので)

ubuntu@ip-x-x-x-x:~$ mkdir git/enchantcity

さらにgitで管理したいプロジェクト用のディレクトリを作成。(この例の場合enchantcity)

ubuntu@ip-x-x-x-x:~$ cd git/enchantcity

プロジェクト用のディレクトリに移動して

ubuntu@ip-x-x-x-x:~/git/enchantcity$ git init --bare

共有リポジトリの作成。

これでソースコードをプッシュする枠はできた。
続いてクライアントから共有リポジトリにソースコードをプッシュする。
TortoiseGitのインストールからコミット方法までは下記の記事を参考にしたので、省略する。
TortoiseGit を使って Git でバージョン管理する

クライアントでのコミットまでできたら、次は共有リポジトリにプッシュする。
git.01
gitで管理しているフォルダをエクスプローラの右クリックメニューのToritoseGitからプッシュ(リモートへ反映)を選択する。

git.02
プッシュダイアログが開いたら、管理ボタンを押す。

git.03
リモート: chat.ac
URL: ssh://ubuntu@chat.ac/home/ubuntu/git/enchantcity
リモートにはリモート名、URLには先ほど作成した共有リポジトリのディレクトリを入力する。
Putty 認証には…ボタンからAmazon EC2のサーバー作成のときに作成したkey pairを指定する。
key pairの作り方は過去記事chat.acができるまで(サーバー取得と設定)を参照されたし。
全て入力し終わったら、新規に追加/保存ボタンを押して、OKボタンを押す。

git.04
プッシュダイアログに戻り、OKボタンを押したら共有リポジトリへのプッシュが始まる。

次はredmineでリポジトリを表示する方法を説明する。
ubuntuにredmineをインストールする方法は過去記事ubuntuにredmineをインストールしようを参照されたし。

git.05
まず、redmineに管理者権限のあるユーザーでログインしたら、redmineのホーム画面からプロジェクトをクリックする。

git.06
次にリポジトリを関連付けたいプロジェクトをクリックする。

git.07
次にプロジェクト画面で設定をクリックする。

git.08
次にプロジェクトの設定画面でリポジトリをクリックする。

git.09
リポジトリの設定画面では、
バージョン管理システム: Git
リポジトリのパス: /home/ubuntu/git/enchantcity (先ほどubuntuで作成したディレクトリ)
を指定して、保存ボタンを押す。
以上でredmineからリポジトリを参照できる。


0