Showing posts with label apache. Show all posts
Showing posts with label apache. Show all posts

May 22, 2014

September 17, 2013

apache 2.4でバーチャルホストする際の注意(Ubuntu)

以下二点、メモです。

1.
/etc/apache2/sites-available/ に作成するファイルに".conf"の拡張子を付けないとa2ensiteで反応しませんでした。


2.
"Require all granted"を書かないとforbiddenを解決できませんでした。
<VirtualHost *:80>
    ServerName xxx.yyy.com
    DocumentRoot /xxx/yyy/public
    <Directory '/xxx/yyy/public'>
        AllowOverride all
        Require all granted
    </Directory>
</VirtualHost>

August 23, 2013

FluentdでApacheのアクセスログをMongoDBに保存するメモ(Ubuntu13.04)

メモです。

FluentdとMongoDBのインストールは済ませてある前提です。

1. fluent-plugin-mongoをインストール
sudo fluent-gem install fluent-plugin-mongo

2. /var/log/fluent ディレクトリを作成

3. /etc/fluent/fluent.conf を作成
<source>
  type tail
  format apache2
  path /var/log/apache2/access.log
  pos_file /var/log/fluent/apache2.access_log.pos
  tag mongo.apache.access
</source>
<match mongo.apache.access>
  type mongo
  database fluent
  collection apache.access
</match>
4. 確認
$ sudo fluentd
ブラウザから適当にアクセスして DB => fluent, コレクション => apache.access を確認。

5. 備考
まだあまり調べていないんですが、見た感じ、sourceでpath値のログファイルをtailしつつ、pos_file値の名前で保存。tag値でタグを付けておく。matchでタグ名(ワイルドカードも可)を指定して、設定の通りに処理をする。みたいな感じですかね。

次はMySQLのスロークエリをやってみよう。

--

追記:
"pos_file"について参考 http://colopl.co.jp/tech/blog/2012/05/1808/

April 22, 2013

Nginxのプロキシ先のApacheでクライアントのIPアドレスをアクセスログに出力する

mod_rpafを使うと出来るっぽかったので、やってみました。Ubuntu上で確認しています。


1. libapache2-mod-rpafをインストールします。
$ sudo apt-get install libapache2-mod-rpaf
$ sudo a2enmod rpaf
$ sudo service apache2 restart
2. http://wiki.nginx.org/FullExample の proxy_conf の通りに /usr/local/nginx/conf/proxy.conf を作成します。
proxy_redirect          off;
proxy_set_header        Host            $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size    10m;
client_body_buffer_size 128k;
proxy_connect_timeout   90;
proxy_send_timeout      90;
proxy_read_timeout      90;
proxy_buffers           32 4k;
3. http://wiki.nginx.org/FullExample の nginx.conf のように proxy.conf を include します。

4. 3までを行なって反応しなかったので /etc/apache2/mods-enabled/rpaf.conf に以下の変更を行いました。(Apacheの再起動も併せて。)
<IfModule mod_rpaf.c>

<IfModule mod_rpaf-2.0.c>
に変更。

参考:
http://serverfault.com/questions/393207/mod-rpaf-problems-with-nginx-front-apache-back-end-after-ubuntu-upgrade

Nginx + Apacheで静的ファイルのみをNginxで返すメモ

locationの書き方メモです。
location ~ .*\.(jpg|JPG|jpeg|JPEG|gif|GIF|png|PNG|swf|SWF|css|CSS|js|JS|ico|ICO) {
    root /var/www/;
}
参考:
http://wiki.nginx.org/FullExample
http://kray.jp/blog/nginx/

April 20, 2013

FuelPHP x RatchetをNginx + Apacheで動かす

JSでRatchetへのコネクションをオープンする時
new WebSocket("ws://example.com:1337");
のようにポート番号を指定しますが、これを消したいなーと。

Ratchetドキュメント http://socketo.me/docs/deploy にはHAProxyの記載がありますが、NginxのWebSocket Proxyでやってみました。尚、使用したNginxは最新の1.3.16です。


1. Apacheのポートを変更
* Nginxにポート80を使用させたいので、Apacheのポートを変更します。
http://madroom-project.blogspot.jp/2013/04/ubuntuapache.html
* 併せて、ApacheへのアクセスをNginxからのみに制限するには /etc/apache2/sites-available/default でドキュメントルートに対して"allow from all"を"allow from 127.0.0.1"にします。

2. Nginxのインストール
* 最新バージョンが欲しいので、ソースからインストールします。
$ wget http://nginx.org/download/nginx-1.3.16.tar.gz
$ tar xzvf nginx-1.3.16.tar.gz
$ cd nginx-1.3.16/
$ ./configure
$ make
$ sudo paco -D make install
$ nginx -v
nginx version: nginx/1.3.16
3. /usr/local/nginx/conf/nginx.conf を編集
* とりあえず http://nginx.org/en/docs/http/websocket.html を参考にしました。
* "location /"は、全てApacheに向けます。
* 以下、Ratchetのポートを1337、Apacheのポートを8000とします。
$ diff /usr/local/nginx/conf/nginx.conf.default /usr/local/nginx/conf/nginx.conf
42a43,49
>         location /socket/ {
>             proxy_pass http://127.0.0.1:1337;
>             proxy_http_version 1.1;
>             proxy_set_header Upgrade $http_upgrade;
>             proxy_set_header Connection "upgrade";
>         }
>
43a51,52
>             proxy_pass http://127.0.0.1:8000;
>
4. Nginxを起動
$ sudo nginx

# 停止は以下
$ sudo nginx -s stop
無事、JSで以下の形で接続出来ました。
new WebSocket("ws://example.com/socket/");
その他、設定すべき項目は有るのかもしれませんが、とりあえず、最小限の手順はこんな感じなのかなと。

(タイトルにFuelPHPとつけたけど全然関係なかったな。。。)


関連:
FuelPHPでWebSocketを扱うパッケージを作りました
http://madroom-project.blogspot.jp/2013/04/fuelphpwebsocket.html

UbuntuでApacheのポートを変更するメモ

メモです。

1. /etc/apache2/sites-available/default
<VirtualHost *:80>

<VirtualHost *:8000>
に変更。

2. /etc/apache2/ports.conf
Listen 80

Listen 8000
に変更。

3. Apacheを再起動。
$ sudo service apache2 restart

April 18, 2013

UbuntuでApacheのmod_rewriteを有効にするメモ

メモです。

1. コマンドの実行
$ sudo a2enmod rewrite
2. /etc/apache2/sites-available/default の修正
<Directory /var/www/>
# 省略
    AllowOverride None
# 省略
</Directory>

<Directory /var/www/>
# 省略
    AllowOverride All
# 省略
</Directory>
に変更。

3. Apacheの再起動
$ sudo service apache2 restart

March 25, 2013

[error] an unknown filter was not added: PHPが出ていた

Apacheのerror.logに以下のエラーが出ていました。
[error] an unknown filter was not added: PHP
あまり情報も無かったんですが、とりあえず原因の箇所をコメントアウト。。。
$ diff /etc/apache2/mods-available/php5filter.conf.20130325 /etc/apache2/mods-available/php5filter.conf
3,4c3,4
<       SetInputFilter PHP
<       SetOutputFilter PHP
---
> #     SetInputFilter PHP
> #     SetOutputFilter PHP
参考:
https://bugs.php.net/bug.php?id=22881

January 2, 2013

UbuntuにPHP 5.4.10をインストールする

追記:
最初、PHP 5.5.0alpha2のインストールをしたのですが、PEARのインストールが上手く行かず、5.4.10をインストールしなおしました。関連箇所を修正しています。

--

以前、以下の記事を書きました。

UbuntuにApacheとPHPとPEARをインストールする
http://madroom-project.blogspot.jp/2012/12/ubuntuapachephp.html

手順は簡単なのですが、PHPのバージョンがPHP 5.3.10と古かったので、5.4.10をインストールし直してみました。尚、make installにはpacoを使っています。また、予め、上記のURLでインストールした余計なパッケージを削除しました。
$ sudo apt-get autoremove php5 libapache2-mod-php5 php-pear
--

1. インストール
$ cd ~/tmp/src/
$ wget http://jp2.php.net/get/php-5.4.10.tar.gz/from/jp1.php.net/mirror -O php-5.4.10.tar.gz
$ tar xfvz php-5.4.10.tar.gz
$ cd php-5.4.10/
$ './configure' \
'--prefix=/usr/local/php/php-5.4.10' \
'--with-apxs2=/usr/bin/apxs2' \
'--enable-mbstring' \
'--with-mysql' \
'--with-mysqli' \
'--with-pdo-mysql' \
'--with-xsl' \
'--with-mcrypt' \
'--enable-pcntl' \
'--with-curl' \
'--with-zlib' \
'--with-openssl'
$ make
$ sudo paco -D make install
* オプションについては別途まとめようと思っています。とりあえずスカスカです。。。
* --with-xslは、phpDocumentor 2で必要でした。
* --with-mcryptはphpMyAdminで必要でした。(先にlibmcrypt-devをインストールする必要がありました。)
* --enable-pcntlはPHPUnitのインストール時、PHP_Invokerというものを併せてインストールするのに必要でした。
* --with-zlibとwith-opensslはDokuWikiのプラグインインストールに必要でした。

参考:
中心となる configure オプションのリスト
http://php.net/manual/ja/configure.about.php

2. php.iniの編集
$ sudo vim /usr/local/php/php-5.4.10/lib/php.ini
 
# 以下を記述
date.timezone="Asia/Tokyo"
3. パスを通す
# シンボリックリンクを作成
$ sudo ln -s /usr/local/php/php-5.4.10 /usr/local/php/latest

$ vim ~/.bashrc
# ~/.bashrcに以下を追記
PATH=/usr/local/php/latest/bin:$PATH
alias sudo="sudo env PATH=$PATH"

# 反映
$ source ~/.bashrc
* "alias sudo"の箇所については、以下を参考にさせて頂きました。

rubyインストールしてあるのにsudoすると「/usr/bin/env: ruby: そのようなファイルやディレクトリはありません」と言われる
http://d.hatena.ne.jp/japanrock_pg/20090527/1243426081

4. コマンドから確認
$ php -v
PHP 5.4.10 (cli) (built: Jan  2 2013 03:26:39) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

$ pear version
PEAR Version: 1.9.4
PHP Version: 5.4.10
Zend Engine Version: 2.4.0
Running on: Linux localhost 3.2.0-35-generic #55-Ubuntu SMP Wed Dec 5 17:42:16 UTC 2012 x86_64
5. Apacheをリスタート
$ sudo service apache2 restart
6. ブラウザから確認
phpinfo()で、"PHP Version 5.4.10"と表示されました。

7. ついでにPEARの設定など
# チャンネルを更新
$ sudo pear update-channels

# PEARをアップグレード
$ sudo pear upgrade -a PEAR

# パッケージをアップグレード
$ sudo pear upgrade-all

# 新規チャネルを自動的に探す
$ sudo pear config-set auto_discover 1

# キャッシュをクリア
$ sudo pear clear-cache

December 24, 2012

Ubuntu 12.04(同一サーバ)にGitLabとJenkinsとRedmineをインストールしてサブディレクトリ(URL)で動かす

大げさなタイトルですが、分散させて書いてみました。とりあえず、以下の順で確認しています。基本的には、順不同(単一でもOKなはず)です。また、さくらはあんまり関係ないですし、前提条件は、極力無くした内容です。

1. さくらのクラウドでパブリックアーカイブからUbuntuサーバを作成した後にやること
http://madroom-project.blogspot.jp/2012/12/ubuntu_20.html

2. Ubuntu 12.04にGitLab 4.0をインストールしてMySQLとApacheで動かす
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204gitlab-40mysqlapache.html
* とりあえず、初期アカウントでログイン成功までは確認が取れました。

3. Ubuntu 12.04にJenkinsをインストールしてApacheでポート80で動かす
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204jenkinsapache80.html
* とりあえず、トップ画面の表示までは確認が取れました。

4. Ubuntu 12.04にRedmine 2.2.0をインストールしてMySQLとApacheで動かす
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204redmine-220apache.html
* とりあえず、初期アカウントでログイン成功までは確認が取れました。

/etc/apache2/sites-available/のgitlabとjenkinsとredmineは、上手くまとめたいなー。
しかし、久々にくたびれた。。。

Ubuntu 12.04にGitLab 4.0をインストールしてMySQLとApacheで動かす

基本的には https://github.com/gitlabhq/gitlabhq/blob/4-0-stable/doc/install/installation.md の通りですが、NginxではなくApacheで動かしてみます。

尚、vimのインストール等、省略している箇所があります。

1. パッケージのインストール
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev  wget curl git-core openssh-server redis-server postfix checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev
* Postfix関係で、 "General type of mail configuration:"は"Internet Site"を選択しました。
* Postfix関係で、ドメイン(FQDN)の入力をしました。/etc/postfix/main.cfのmydestinationの値に設定されていました。

2. pythonのバージョンを確認
$ python --version
Python 2.7.3
* 2.5以上が必要とのことです。また、3.xは非サポートとのことです。

3. Ruby(ruby-1.9.3-p327)とBundlerのインストール
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204ruby_23.html

4. ユーザの追加、グループの編集、鍵の作成
$ sudo adduser \
  --system \
  --shell /bin/sh \
  --gecos 'Git Version Control' \
  --group \
  --disabled-password \
  --home /home/git \
  git

$ sudo adduser --disabled-login --gecos 'GitLab' gitlab

$ sudo usermod -a -G git gitlab

$ sudo -u gitlab -H ssh-keygen -q -N '' -t rsa -f /home/gitlab/.ssh/id_rsa
5. Gitoliteのインストールと設定
$ cd /home/git
$ sudo -u git -H git clone -b gl-v320 https://github.com/gitlabhq/gitolite.git /home/git/gitolite

$ sudo -u git -H mkdir /home/git/bin
$ sudo -u git -H sh -c 'printf "%b\n%b\n" "PATH=\$PATH:/home/git/bin" "export PATH" >> /home/git/.profile'
$ sudo -u git -H sh -c 'gitolite/install -ln /home/git/bin'

$ sudo cp /home/gitlab/.ssh/id_rsa.pub /home/git/gitlab.pub
$ sudo chmod 0444 /home/git/gitlab.pub

$ sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; gitolite setup -pk /home/git/gitlab.pub"

$ sudo chmod 750 /home/git/.gitolite/
$ sudo chown -R git:git /home/git/.gitolite/

$ sudo chmod -R ug+rwXs,o-rwx /home/git/repositories/
$ sudo chown -R git:git /home/git/repositories/
* 以下の"example.com"は適切な値に置換して下さい。
$ echo "Host localhost
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null" | sudo tee -a /etc/ssh/ssh_config

$ echo "Host example.com
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null" | sudo tee -a /etc/ssh/ssh_config
* 以下、sshのポートを変更していると、"ssh: connect to host localhost port 22: Connection refused"のエラーが出ます。その場合、"ssh://git@localhost:[ポート番号]/gitolite-admin.git"の形式にして下さい。( https://github.com/gitlabhq/gitlabhq/issues/1063#issuecomment-9956749 より。)
$ sudo -u gitlab -H git clone git@localhost:gitolite-admin.git /tmp/gitolite-admin

$ sudo rm -rf /tmp/gitolite-admin
6. MySQLのインストール(phpMyAdminは不要)
http://madroom-project.blogspot.jp/2012/12/ubuntumysql.html

7. MySQLの設定
* パスワード等は、適宜置換して下さい。
$ mysql -u root -p

mysql> CREATE USER 'gitlab'@'localhost' IDENTIFIED BY 'gitlab';
mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';
mysql> \q

$ sudo -u gitlab -H mysql -u gitlab -p -D gitlabhq_production
mysql> \q
8. GitLabのインストールと設定
$ cd /home/gitlab
$ sudo -u gitlab -H git clone https://github.com/gitlabhq/gitlabhq.git gitlab
$ cd /home/gitlab/gitlab
$ sudo -u gitlab -H git checkout 4-0-stable

$ cd /home/gitlab/gitlab
$ sudo -u gitlab -H cp config/gitlab.yml.example config/gitlab.yml

$ sudo chown -R gitlab log/
$ sudo chown -R gitlab tmp/
$ sudo chmod -R u+rwX  log/
$ sudo chmod -R u+rwX  tmp/

$ sudo -u gitlab -H cp config/unicorn.rb.example config/unicorn.rb
* 以下、"localhost"を実際のドメイン名に書き換えます。
$ sudo -u gitlab -H vim config/gitlab.yml
9. GitLab用のDB(Mysql)設定
* 以下、コピーした後、productionのusernameとpasswordを書き換えます。
$ sudo -u gitlab cp config/database.yml.mysql config/database.yml
10. Gemパッケージのインストール(MySQLの場合)
$ cd /home/gitlab/gitlab
$ sudo gem install charlock_holmes --version '0.6.9'
$ sudo -u gitlab -H bundle install --deployment --without development test postgres
11. Gitの設定
$ sudo -u gitlab -H git config --global user.name "GitLab"
$ sudo -u gitlab -H git config --global user.email "gitlab@localhost"
12. GitLabのHook設定
$ sudo cp ./lib/hooks/post-receive /home/git/.gitolite/hooks/common/post-receive
$ sudo chown git:git /home/git/.gitolite/hooks/common/post-receive
13. DBの初期化
$ sudo -u gitlab -H bundle exec rake gitlab:app:setup RAILS_ENV=production
* sshのポートを変更していると、"ssh: connect to host localhost port 22: Connection refused"のエラーが出ます。その場合、/home/gitlab/.ssh/configを編集します。
$ sudo -u gitlab vim /home/gitlab/.ssh/config
-- /home/gitlab/.ssh/config --
Host localhost
Port [ポート番号]
14. 初期化スクリプトのインストールとGitLabの起動
$ sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/init.d/gitlab -P /etc/init.d/
$ sudo chmod +x /etc/init.d/gitlab

$ sudo update-rc.d gitlab defaults 21
$ sudo service gitlab start
15. ステータスの確認
$ sudo -u gitlab -H bundle exec rake gitlab:env:info RAILS_ENV=production
$ sudo -u gitlab -H bundle exec rake gitlab:check RAILS_ENV=production
16. ApacheとPassengerのインストール(RubyとBundlerはインストール済)
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204apachepassenger.html

17. Apacheの設定
$ sudo vim /etc/apache2/sites-available/gitlab
-- /etc/apache2/sites-available/gitlab --
* 以下、"sudo passenger-install-apache2-module"した際の内容に、"RailsBaseURI /gitlab"を付け加えています。とりあえずGitLab専用の設定という意味で、/etc/apache2/sites-available/gitlabに隔離しています。
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18
#PassengerRuby /usr/local/bin/ruby
 
RailsBaseURI /gitlab
18. Apacheの設定反映
$ sudo ln -s /home/gitlab/gitlab/public /var/www/gitlab
$ sudo a2ensite gitlab
$ sudo service apache2 reload

19. [ベースURL]/gitlab にアクセス
* 初期のアカウントは admin@local.host / 5iveL!fe です。

December 23, 2012

Ubuntu 12.04にApacheとPassengerをインストールする

コマンドのメモです。

1. RubyとBundlerをインストールする
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204ruby_23.html

2. ApacheとPassengerをインストールする
$ sudo apt-get install -y apache2 libcurl4-openssl-dev apache2-prefork-dev libapr1-dev libaprutil1-dev
$ sudo gem install passenger
$ sudo passenger-install-apache2-module
--------------------------------------------
The Apache 2 module was successfully installed.

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
   PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18
   PassengerRuby /usr/local/bin/ruby

After you restart Apache, you are ready to deploy any number of Ruby on Rails
applications on Apache, without any further Ruby on Rails-specific
configuration!

Press ENTER to continue.


--------------------------------------------
Deploying a Ruby on Rails application: an example

Suppose you have a Rails application in /somewhere. Add a virtual host to your
Apache configuration file and set its DocumentRoot to /somewhere/public:

   <VirtualHost *:80>
      ServerName www.yourhost.com
      # !!! Be sure to point DocumentRoot to 'public'!
      DocumentRoot /somewhere/public    
      <Directory /somewhere/public>
         # This relaxes Apache security settings.
         AllowOverride all
         # MultiViews must be turned off.
         Options -MultiViews
      </Directory>
   </VirtualHost>

And that's it! You may also want to check the Users Guide for security and
optimization tips, troubleshooting and other useful information:

  /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/doc/Users guide Apache.html

Enjoy Phusion Passenger, a product of Phusion (www.phusion.nl) :-)
https://www.phusionpassenger.com

Phusion Passenger is a trademark of Hongli Lai & Ninh Bui.

Ubuntu 12.04にRedmine 2.2.0をインストールしてMySQLとApacheで動かす

参考:
http://shirangana.info/115/?page_id=611
http://two-pack-sbs.blogspot.jp/2012/06/ubuntu-1204redmine-203.html

1. パッケージのインストール
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo apt-get install -y libyaml-dev libncurses5-dev libgdbm-dev libssl-dev libreadline-dev tk-dev zlib1g-dev libmysqld-dev libmagickcore-dev libmagickwand-dev apache2-dev paco
2. MySQLのインストール(phpMyAdminは不要)
http://madroom-project.blogspot.jp/2012/12/ubuntumysql.html

3. Ruby(ruby-1.9.3-p327)とBundlerのインストール
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204ruby_23.html

4. MySQLの設定
$ sudo vim /etc/mysql/conf.d/characterset.cnf
-- characterset.cnf --
[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
$ sudo service mysql restart
4-2. MySQLの設定確認
$ mysql -u root -p
mysql> show variables like 'character_set%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

mysql> \q
5. Redmine用のMySQLデータベースとユーザを作成
* パスワード等は、適宜置換して下さい。
$ mysql -u root -p

mysql> create database redmine default character set utf8;
mysql> grant all on redmine.* to redmine@localhost identified by 'redmine';
mysql> flush privileges;
mysql> \q
6. Redmine(2.2.0)のインストール
$ cd ~/tmp
$ wget http://rubyforge.org/frs/download.php/76627/redmine-2.2.0.tar.gz
$ tar xfvz redmine-2.2.0.tar.gz
$ sudo mv redmine-2.2.0 /usr/local/
$ sudo ln -s /usr/local/redmine-2.2.0 /usr/local/redmine
7. データベースへの接続設定
$ sudo vim /usr/local/redmine/config/database.yml
-- database.yml --
* 内容は、適宜置換して下さい。
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: redmine
  password: "redmine"
  encoding: utf8
8. メールサーバへの接続設定
$ sudo vim /usr/local/redmine/config/configuration.yml
-- configuration.yml --
* 内容は、適宜置換して下さい。
production:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "localhost"
      port: 25
      domain: 'example.com'
9. Gemパッケージのインストール
$ cd /usr/local/redmine
$ bundle install --without development test postgresql sqlite
10. Redmineの初期設定とデータベースのテーブル作成
$ rake generate_secret_token
$ RAILS_ENV=production rake db:migrate
11. ApacheとPassengerのインストール(RubyとBundlerはインストール済)
http://madroom-project.blogspot.jp/2012/12/ubuntu-1204apachepassenger.html

12. Apacheの設定
$ sudo vim /etc/apache2/sites-available/redmine
-- /etc/apache2/sites-available/redmine --
* 以下、"sudo passenger-install-apache2-module"した際の内容に、"RailsBaseURI /redmine"を付け加えています。とりあえずRedmine専用の設定という意味で、/etc/apache2/sites-available/redmineに隔離しています。
LoadModule passenger_module /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18/ext/apache2/mod_passenger.so
PassengerRoot /usr/local/lib/ruby/gems/1.9.1/gems/passenger-3.0.18
#PassengerRuby /usr/local/bin/ruby

RailsBaseURI /redmine
13. Apacheの設定反映
$ sudo ln -s /usr/local/redmine/public /var/www/redmine
$ sudo a2ensite redmine
$ sudo service apache2 reload
14. [ベースURL]/redmine にアクセス
初期のアカウントは admin / admin です。

December 22, 2012

Ubuntu 12.04にJenkinsをインストールしてApacheでポート80で動かす

メモ。


(1)
Jenkinsをインストール
$ sudo apt-get update
$ sudo apt-get upgrade -y
$ sudo apt-get install -y jenkins
(2)
/etc/default/jenkinsの"JENKINS_ARGS"に"--prefix=/jenkins"を追加(URLをサブディレクトリ式にする為)
/etc/default/jenkinsに「JAVA_ARGS="-Dfile.encoding=utf-8"」を追記(Git Pluginの文字化け対応)
$ sudo vim /etc/default/jenkins
-- /etc/default/jenkins --
JAVA_ARGS="-Dfile.encoding=utf-8"

...

JENKINS_ARGS="--webroot=$JENKINS_RUN/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --preferredClassLoader=java.net.URLClassLoader --prefix=/jenkins"
(3)
Jenkinsをリスタート
$ sudo service jenkins restart
(4)
Apacheをインストール
$ sudo apt-get install -y apache2
(5)
proxyの設定
$ sudo a2enmod proxy
$ sudo a2enmod proxy_http
$ sudo vim /etc/apache2/sites-available/jenkins
-- /etc/apache2/sites-available/jenkins --
* URLは、適切な値に置換して下さい。
ProxyPass /jenkins http://xxx.xxx.xxx.xxx:8080/jenkins
ProxyPassReverse /jenkins http://xxx.xxx.xxx.xxx:8080/jenkins
(6)
設定を反映
$ sudo a2ensite jenkins
$ sudo service apache2 restart
(7)
[ベースURL]/jenkins にアクセス
参考:
https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache
https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu

(8)
グラフで文字化けが発生するので、好きな日本語フォントをインストールします。
https://wiki.ubuntulinux.jp/UbuntuTips/Desktop/InstallFont
sudo apt-get install -y ttf-umefont
Jenkinsのシステム情報の"java.home"の"lib"に移動します。
cd /usr/lib/jvm/java-6-openjdk-i386/jre/lib
フォントを配置します。
sudo mkdir -p fonts/fallback
cd fonts/fallback/
sudo ln -s /usr/share/fonts/truetype/horai-umefont/ume-pgc4.ttf
Jenkinsを再起動します。
sudo service jenkins restart

参考: Jenkins on Ubuntu の文字化けを直す
http://shunirr.hatenablog.jp/entry/2013/01/10/175426


P.S.
ジョブとかは /var/lib/jenkins/ 以下に作成されるようです。

December 21, 2012

UbuntuにApacheとPHPとPEARをインストールする

2013/01/02 追記:
ソースからもインストールしてみました。
http://madroom-project.blogspot.jp/2013/01/ubuntu550alpha2.html

--

コマンドのメモです。pearも一緒に。
$ sudo apt-get install -y apache2 php5 libapache2-mod-php5 php-pear
$ sudo /etc/init.d/apache2 restart
$ php --version
PHP 5.3.10-1ubuntu3.4 with Suhosin-Patch (cli) (built: Sep 12 2012 18:59:41) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies