Skip to content

RikaFujiwara/NetCommons3

 
 

Repository files navigation

NetCommons

国立情報学研究所が次世代情報共有基盤システムとして開発しています。サポート情報やライセンスなどの最新の情報は公式サイトを御覧ください。 こちらのリポジトリは最新版として開発中のv3となります。安定版ではありませんのでご注意ください。現在の安定版についてはこちらのレポジトリをご覧ください。

NetCommons公式サイト

Build Status Coverage Status

dependencies status
Gemfile Dependency Status
composer.json Dependency Status

動作実績

以下の組み合わせで動作することを確認しています。

OS matrix
Windows 8.1 virtualbox 4.3.10, vagrant 1.4.3
Windows 8.1 virtualbox 4.3.12, vagrant 1.6.3
Windows 7 virtualbox 4.3.12, vagrant 1.4.3
Windows 7 virtualbox 4.3.12, vagrant 1.6.3
OSX Mavericks virtualbox 4.3.8, vagrant 1.4.3
OSX Mavericks virtualbox 4.3.8, vagrant 1.6.0
Ubuntu 12.10 virtualbox 4.3.10, vagrant 1.4.3
Ubuntu 12.04 virtualbox 4.3.10, vagrant 1.6.1

インストール

共通

下記アプリケーションをインストールして下さい。

依存ライブラリをインストール

ubuntu 12.10

sudo aptitude install zlib1g-dev ruby ruby-dev lsb-core libxml2-dev libxslt-dev libcurl4-gnutls-dev nodejs libmysql++-dev postgresql-server-dev-all
sudo npm install -g gfms grunt-cli
sudo easy_install -U sphinx sphinxcontrib-phpdomain
cd NetCommons3
bundle

OSX Mavericks

brew install libffi mysql postgresql
sudo npm install -g gfms grunt-cli
sudo easy_install -U sphinx sphinxcontrib-phpdomain
cd NetCommons3
bundle

Windows

git コマンドのパスが通っていないと下記エラーが発生します。 その場合 msysgit を再度インストールするなど試して下さい。

[Berkshelf] Failed to download 'composer' from git: 'https://github.com/Morphodo
/chef-composer.git' with branch: 'master'

vagrant plugin

vagrant plugin install vagrant-hostmanager
vagrant plugin install vagrant-omnibus

vagrant plugin (vagrant 1.4.x)

vagrant plugin install vagrant-berkshelf --plugin-version 1.3.7

vagrant plugin (vagrant 1.5+)

vagrant plugin install vagrant-berkshelf --plugin-version 2.0.1

windowsの場合、dep-selector-libgecodeで失敗します。 Tar for WindowsからBinaries(Zip):tar-1.13-1-bin.zipとDependencies(Zip):tar-1.13-1-dep.zipをダウンロードし、解凍した中身のファイルを、C:\HashiCorp\Vagrant\embedded\mingwにコピーしてください。

ソースを配置

このリポジトリをgitでクローンするか、ZIPなどでダウンロードしてください。 gitでクローンする場合は、ソースを配置したいパスに移動して以下のコマンドを実行します。

cd /usr/local/src
git clone https://github.com/NetCommons3/NetCommons3.git

Windows ホストの場合

git について

git の pre commit hook で phpcs, phpmd, phpunit, php -l が通らないものを commit できないようにしていますが、windows 用の git client には pre commit hook を無視する client があるようなので、guest 側 の git command をご利用下さい。 windows ホスト側で git コマンドを使うのは、初回 git clone 時のみとして下さい。

synced_folder 無効化

virtualbox のある時点から windows では synced_folder 上で symlink が貼れなくなっています。 synced_folder を有効にしたままで vagrant up すると symlink が破壊されます。下記の通り Vagrantfile に 『disabled: true』 を指定して下さい。

$ emacs Vagrantfile
    node.vm.synced_folder '.', '/var/www/app',
    :create => true, :owner=> 'www-data', :group => 'www-data'

    node.vm.synced_folder '.', '/var/www/app', disabled: true,
    :create => true, :owner=> 'www-data', :group => 'www-data'
Berksfileの修正(vagrant1.4.xのバージョンのみ)

vagrant-berkshelfの古いバージョンでは、sourceが使えないため下記の修正を行い、Berksfile.lockファイルを削除してから、vagrant upを実行しないとエラーになる。

source 'https://api.berkshelf.com'

site :opscode

起動

vagrantを起動

配置したソースのパスでvagrantを起動します。初回のみOSのダウンロードに時間がかかります。

vagrant up default

※windows だと以下のようなエラーが出るようです。

Failed to load the "vagrant-berkshelf" plugin. View logs for more details.
Bringing machine 'default' up with 'virtualbox' provider...
There are errors in the configuration of this machine. Please fix
the following errors and try again:

Vagrant:
* Unknown configuration section 'berkshelf'.

その場合は下記 mingw から vagrant up を実行して下さい。

C:\HashiCorp\Vagrant\embedded\mingw\mingw32env.cmd

動作確認

vagrant upを実行すると、以下のようなコマンドラインが表示されます。

----省略--------
[default]-- 22 => 2222 (adapter 1)
[default]-- 80 => 9090 (adapter 1)
----省略--------

それぞれ SSHとHTTPに使用するポート番号です。 デフォルトでは上記のポート番号を使用しますが、デフォルトのポートが使用中の場合は他のポート番号を使用する場合があります。 値が異なる場合は適宜以下の説明を読み替えてください。

また、サーバ内にSSHする場合はvagrantコマンドを使います。

vagrant ssh

ホストOSがWindowsの場合はPuttyなどのSSHクライアントソフトで127.0.0.1のポート2222につないでください。

SSH認証のユーザ名とパスフレーズはともに「vagrant」です。

guest には下記 vhosts が作成され、動作の確認ができます。

※windowsは vagrant に ssh 接続した後、下記のコマンドを実行してください。

sudo -s
chown -R www-data:www-data /var/www/app
chown -R www-data:www-data /var/www/docs

その後、ホスト側で下記コマンド実行

vagrant provision default
url 用途
http://app.local:9090 netcommons 本体
http://sphinx.local:9090 ドキュメント管理
http://phpdoc.local:9090 phpdoc

※ windowsは hosts が設定されない事があります。その場合は hosts に下記設定を直接指定して下さい。

127.0.0.1 app.local sphinx.local phpdoc.local phpldapadmin.local redmine.local jenkins.local

Workaround

vagrant up実行時に、仮想化支援機構(VT-x/AMD-V)が有効化されていないメッセージが表示された場合は、BIOSの設定を見直してください。

開発

virtualbox の最新版, vagrant 1.4.x の組み合わせで Windows のホスト側にてファイルを編集する場合は、下記 samba をマウントし作業をする必要があります。

\\10.0.0.10\shared\app

その他の OS は vagrant up したディレクトリ直下のファイルを直接編集するだけで host <=> guest 間でファイルが同期できます。

終了

vagrantコマンドで仮想マシンを終了、又は破棄出来ます。

一旦止めるだけの場合。

vagrant halt

データを破棄する場合。次回、vagrant upの際にはまっさらなマシンから新規インストールが行われます。

vagrant destroy

provisionする場合。 default オプションをつける必要が有ります。

vagrant provision default

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 97.5%
  • CSS 1.2%
  • Ruby 0.9%
  • JavaScript 0.2%
  • Shell 0.1%
  • Batchfile 0.1%