技術メモ

技術メモ

1つのサーバで複数の開発環境をつくる

前提条件

  • php(phpenv,composer導入済み)、apacheで稼働
  • 何かしらのフレームワークを利用(Fuelを想定)
  • バージョン管理されてる(gitbucketを想定)

リソースの取得

まずは、管理リソースを。

# cd /var/www/
# git clone -b develop http://~.git 開発用ディレクトリ
# chown -R user:user 開発用ディレクトリ


次に、管理外リソースを。

// composer利用に伴いバージョン調整
$ cd /var/www/開発用ディレクトリ
$ phpenv install 5.6.15
$ phpenv local 5.6.15
$ phpenv versions // バージョン確認

// composerパッケージの取得
$ php composer.phar self-update
$ php composer.phar install


↑2つ(管理/管理外リソースの取得)はコピーで済むなら、それでも。

# cd /var/www/
# cp org_dir 開発用ディレクトリ

開発者固有の設定

git等

$ vi 開発用ディレクトリ/.git/config
// 以下を追記
[user]
        name = aitaka
        email = aitaka@~.co.jp

$ git remote set-url origin http://aitaka@~.git

Apache(バーチャルホスト)の設定

いろいろやり方はあるけど、今回は「違うポートで違うサイトを運営する」
バーチャルホストの例 - Apache HTTP サーバ バージョン 2.2


ポートの利用状況について調べる

$ netstat -anp | grep ポート番号

参考
Linuxでアプリケーションが使用中のポート番号を調べる - 日々の報告書


バーチャルホストを追加する

# vi /etc/httpd/conf/httpd.conf
// 以下を追記
// ポート番号を890としたとき
Listen 890
<VirtualHost *:890>
    DocumentRoot /var/www/開発用ディレクトリ/public/
    ServerName dev1
    <Directory /var/www/開発用ディレクトリ/public>
      AllowOverride All
      Options Indexes FollowSymLinks
    </Directory>
</VirtualHost>

# service httpd restart

参考
ポートベースのバーチャルホストを設定する - MogLog
いまさら聞けない!? Web系開発者のためのサーバ知識(3):Apacheで仮想ホストを動かそう (1/3) - @IT

firewallの設定

通過許可ポートの追加

# vi /etc/sysconfig/iptables
// 以下を追記
// ポート番号を890としたとき
-A INPUT -m state --state NEW -m tcp -p tcp --dport 890 -j ACCEPT

# service iptables restart

参考
iptablesの設定方法 – さくらのサポート情報